def remove_item(item_or_item_name): """ This function removes an Item using a ManagedItemProvider. Args: item_or_item_name (Item or str): the Item object or name for the Item to create Returns: Item or None: the Item that was removed or None """ try: item = remove_all_links(item_or_item_name) if item is None: log.warn( "Item cannot be removed because it does not exist in the ItemRegistry: [{}]" .format(item_or_item_name)) return None ManagedItemProvider.remove(item.name) if itemRegistry.getItems(item.name) == []: log.debug("Item removed: [{}]".format(item.name)) return item else: log.warn( "Failed to remove Item from the ItemRegistry: [{}]".format( item.name)) return None except: import traceback log.error(traceback.format_exc()) return None
def remove_item(item): try: from org.eclipse.smarthome.core.items import GenericItem if isinstance(item, basestring): if scope.itemRegistry.getItems(item) == []: raise Exception( "\"{}\" is not in the ItemRegistry".format(item)) else: item = scope.ir.getItem(item) elif not isinstance(item, GenericItem): raise Exception("\"{}\" is not a string or Item".format(item)) elif scope.itemRegistry.getItems(item.name) == []: raise Exception("\"{}\" is not in the ItemRegistry".format(item)) remove_all_links(item) JythonItemProvider.remove(item) log.debug("Item removed: [{}]".format(item)) except: import traceback log.error(traceback.format_exc())
def remove_item(item_or_item_name): try: item = item_or_item_name if isinstance(item, basestring): if scope.itemRegistry.getItems(item) == []: raise Exception( "\"{}\" is not in the ItemRegistry".format(item)) else: item = scope.ir.getItem(item_or_item_name) elif not hasattr(item_or_item_name, 'name'): raise Exception( "\"{}\" is not a string or Item".format(item_or_item_name)) if scope.itemRegistry.getItems(item.name) == []: raise Exception("\"{}\" is not in the ItemRegistry".format( item.name)) remove_all_links(item) JythonItemProvider.remove(item) ManagedItemProvider.remove(item.name) log.debug("Item removed: [{}]".format(item)) except: import traceback log.error(traceback.format_exc())
def remove_item(item_or_item_name): try: item = remove_all_links(item_or_item_name) if item is None: log.warn("Item cannot be removed because it does not exist in the ItemRegistry: [{}]".format(item_or_item_name)) return None ManagedItemProvider.remove(item.name) if scope.itemRegistry.getItems(item.name) == []: log.debug("Item removed: [{}]".format(item.name)) return item else: log.warn("Failed to remove Item from the ItemRegistry: [{}]".format(item.name)) return None except: import traceback log.error(traceback.format_exc()) return None