Package org.openhab.core.thing.link
Class ItemChannelLinkRegistry
java.lang.Object
org.openhab.core.common.registry.AbstractRegistry<L,String,P>
org.openhab.core.thing.link.AbstractLinkRegistry<ItemChannelLink,ItemChannelLinkProvider>
org.openhab.core.thing.link.ItemChannelLinkRegistry
- All Implemented Interfaces:
ProviderChangeListener<ItemChannelLink>,Registry<ItemChannelLink,String>
@NonNullByDefault
public class ItemChannelLinkRegistry
extends AbstractLinkRegistry<ItemChannelLink,ItemChannelLinkProvider>
- Author:
- Dennis Nobel - Initial contribution, Markus Rathgeb - Linked items returns only existing items, Markus Rathgeb - Rewrite collection handling to improve performance
-
Constructor Summary
ConstructorsConstructorDescriptionItemChannelLinkRegistry(ThingRegistry thingRegistry, ItemRegistry itemRegistry) -
Method Summary
Modifier and TypeMethodDescriptiongetBoundChannels(String itemName) Returns a set of bound channels for the given item name.getBoundThings(String itemName) Returns a set of bound things for the given item name.getLinkedItemNames(UID uid) Returns the item names, which are bound to the given UID.getLinkedItems(UID uid) Returns a set of bound items for the given channel UID.protected voidprotected voidprotected voidnotifyListenersAboutUpdatedElement(ItemChannelLink oldElement, ItemChannelLink element) intpurge()Remove all orphaned (item or channel missing) linksintremoveLinksForItem(String itemName) Remove all links related to an itemintremoveLinksForThing(ThingUID thingUID) Remove all links related to a thingprotected voidsetEventPublisher(EventPublisher eventPublisher) protected voidprotected voidsetReadyService(ReadyService readyService) protected voidunsetEventPublisher(EventPublisher eventPublisher) protected voidprotected voidunsetReadyService(ReadyService readyService) Methods inherited from class org.openhab.core.thing.link.AbstractLinkRegistry
getLinks, getLinks, isLinked, isLinked, isLinked, onAddElement, onRemoveElement, onUpdateElementMethods inherited from class org.openhab.core.common.registry.AbstractRegistry
activate, add, added, addProvider, addRegistryChangeListener, beforeUpdateElement, deactivate, forEach, forEach, forEach, get, getAll, getEventPublisher, getManagedProvider, getProvider, getProvider, getValueAndProvider, notifyListeners, notifyListeners, postEvent, remove, removed, removeProvider, removeRegistryChangeListener, setManagedProvider, stream, unsetManagedProvider, update, updated, waitForCompletedAsyncActivationTasks
-
Constructor Details
-
ItemChannelLinkRegistry
-
-
Method Details
-
getBoundChannels
Returns a set of bound channels for the given item name.- Parameters:
itemName- item name- Returns:
- an unmodifiable set of bound channels for the given item name
-
getLinkedItemNames
Description copied from class:AbstractLinkRegistryReturns the item names, which are bound to the given UID.- Overrides:
getLinkedItemNamesin classAbstractLinkRegistry<ItemChannelLink,ItemChannelLinkProvider> - Parameters:
uid- UID- Returns:
- a non-null unmodifiable collection of item names that are linked to the given UID.
-
getLinkedItems
Returns a set of bound items for the given channel UID.- Parameters:
uid- channel UID- Returns:
- an unmodifiable set of bound items for the given channel UID
-
getBoundThings
Returns a set of bound things for the given item name.- Parameters:
itemName- item name- Returns:
- an unmodifiable set of bound things for the given item name
-
setManagedProvider
-
unsetManagedProvider
-
setEventPublisher
- Overrides:
setEventPublisherin classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-
setReadyService
- Overrides:
setReadyServicein classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-
unsetReadyService
- Overrides:
unsetReadyServicein classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-
unsetEventPublisher
- Overrides:
unsetEventPublisherin classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-
removeLinksForThing
Remove all links related to a thing- Parameters:
thingUID- the UID of the thing- Returns:
- the number of removed links
-
removeLinksForItem
Remove all links related to an item- Parameters:
itemName- the name of the item- Returns:
- the number of removed links
-
purge
public int purge()Remove all orphaned (item or channel missing) links- Returns:
- the number of removed links
-
notifyListenersAboutAddedElement
- Overrides:
notifyListenersAboutAddedElementin classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-
notifyListenersAboutRemovedElement
- Overrides:
notifyListenersAboutRemovedElementin classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-
notifyListenersAboutUpdatedElement
protected void notifyListenersAboutUpdatedElement(ItemChannelLink oldElement, ItemChannelLink element) - Overrides:
notifyListenersAboutUpdatedElementin classAbstractRegistry<ItemChannelLink,String, ItemChannelLinkProvider>
-