org.teleal.cling.registry
Class RegistryImpl

java.lang.Object
  extended by org.teleal.cling.registry.RegistryImpl
All Implemented Interfaces:
Registry

public class RegistryImpl
extends Object
implements Registry


Field Summary
protected  UpnpServiceConfiguration configuration
           
protected  org.teleal.cling.registry.LocalItems localItems
           
protected  List<Runnable> pendingExecutions
           
protected  ProtocolFactory protocolFactory
           
protected  Set<RegistryListener> registryListeners
           
protected  RegistryMaintainer registryMaintainer
           
protected  org.teleal.cling.registry.RemoteItems remoteItems
           
protected  Set<org.teleal.cling.registry.RegistryItem<URI,Resource>> resourceItems
           
 
Constructor Summary
RegistryImpl(UpnpServiceConfiguration configuration, ProtocolFactory protocolFactory)
           
 
Method Summary
 void addDevice(LocalDevice localDevice)
           
 void addDevice(RemoteDevice remoteDevice)
           
 void addListener(RegistryListener listener)
           
 void addLocalSubscription(LocalGENASubscription subscription)
           
 void addRemoteSubscription(RemoteGENASubscription subscription)
           
 void addResource(Resource resource)
           
 void addResource(Resource resource, int maxAgeSeconds)
           
protected  RegistryMaintainer createRegistryMaintainer()
           
 UpnpServiceConfiguration getConfiguration()
           
 Device getDevice(UDN udn, boolean rootOnly)
           
 Collection<Device> getDevices()
           
 Collection<Device> getDevices(DeviceType deviceType)
           
 Collection<Device> getDevices(ServiceType serviceType)
           
 Collection<RegistryListener> getListeners()
           
 LocalDevice getLocalDevice(UDN udn, boolean rootOnly)
           
 Collection<LocalDevice> getLocalDevices()
           
 LocalGENASubscription getLocalSubscription(String subscriptionId)
           
 ProtocolFactory getProtocolFactory()
           
 RemoteDevice getRemoteDevice(UDN udn, boolean rootOnly)
           
 Collection<RemoteDevice> getRemoteDevices()
           
 RemoteGENASubscription getRemoteSubscription(String subscriptionId)
           
<T extends Resource>
T
getResource(Class<T> resourceType, URI pathQuery)
           
 Resource getResource(URI pathQuery)
           
 Collection<Resource> getResources()
           
<T extends Resource>
Collection<T>
getResources(Class<T> resourceType)
           
 Service getService(ServiceReference serviceReference)
           
 void printDebugLog()
           
 void removeAllLocalDevices()
           
 void removeAllRemoteDevices()
           
 boolean removeDevice(LocalDevice localDevice)
           
 boolean removeDevice(RemoteDevice remoteDevice)
           
 boolean removeDevice(UDN udn)
           
 void removeListener(RegistryListener listener)
           
 boolean removeLocalSubscription(LocalGENASubscription subscription)
           
 void removeRemoteSubscription(RemoteGENASubscription subscription)
           
 boolean removeResource(Resource resource)
           
 void shutdown()
           
 boolean update(RemoteDeviceIdentity rdIdentity)
           
 boolean updateLocalSubscription(LocalGENASubscription subscription)
           
 void updateRemoteSubscription(RemoteGENASubscription subscription)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

configuration

protected final UpnpServiceConfiguration configuration

protocolFactory

protected final ProtocolFactory protocolFactory

registryMaintainer

protected final RegistryMaintainer registryMaintainer

registryListeners

protected final Set<RegistryListener> registryListeners

resourceItems

protected final Set<org.teleal.cling.registry.RegistryItem<URI,Resource>> resourceItems

pendingExecutions

protected final List<Runnable> pendingExecutions

remoteItems

protected final org.teleal.cling.registry.RemoteItems remoteItems

localItems

protected final org.teleal.cling.registry.LocalItems localItems
Constructor Detail

RegistryImpl

public RegistryImpl(UpnpServiceConfiguration configuration,
                    ProtocolFactory protocolFactory)
Method Detail

getConfiguration

public UpnpServiceConfiguration getConfiguration()
Specified by:
getConfiguration in interface Registry

getProtocolFactory

public ProtocolFactory getProtocolFactory()
Specified by:
getProtocolFactory in interface Registry

createRegistryMaintainer

protected RegistryMaintainer createRegistryMaintainer()

addListener

public void addListener(RegistryListener listener)
Specified by:
addListener in interface Registry

removeListener

public void removeListener(RegistryListener listener)
Specified by:
removeListener in interface Registry

getListeners

public Collection<RegistryListener> getListeners()
Specified by:
getListeners in interface Registry

addDevice

public void addDevice(LocalDevice localDevice)
Specified by:
addDevice in interface Registry

addDevice

public void addDevice(RemoteDevice remoteDevice)
Specified by:
addDevice in interface Registry

update

public boolean update(RemoteDeviceIdentity rdIdentity)
Specified by:
update in interface Registry

removeDevice

public boolean removeDevice(LocalDevice localDevice)
Specified by:
removeDevice in interface Registry

removeDevice

public boolean removeDevice(RemoteDevice remoteDevice)
Specified by:
removeDevice in interface Registry

removeAllLocalDevices

public void removeAllLocalDevices()
Specified by:
removeAllLocalDevices in interface Registry

removeAllRemoteDevices

public void removeAllRemoteDevices()
Specified by:
removeAllRemoteDevices in interface Registry

removeDevice

public boolean removeDevice(UDN udn)
Specified by:
removeDevice in interface Registry

getDevice

public Device getDevice(UDN udn,
                        boolean rootOnly)
Specified by:
getDevice in interface Registry

getLocalDevice

public LocalDevice getLocalDevice(UDN udn,
                                  boolean rootOnly)
Specified by:
getLocalDevice in interface Registry

getRemoteDevice

public RemoteDevice getRemoteDevice(UDN udn,
                                    boolean rootOnly)
Specified by:
getRemoteDevice in interface Registry

getLocalDevices

public Collection<LocalDevice> getLocalDevices()
Specified by:
getLocalDevices in interface Registry

getRemoteDevices

public Collection<RemoteDevice> getRemoteDevices()
Specified by:
getRemoteDevices in interface Registry

getDevices

public Collection<Device> getDevices()
Specified by:
getDevices in interface Registry

getDevices

public Collection<Device> getDevices(DeviceType deviceType)
Specified by:
getDevices in interface Registry

getDevices

public Collection<Device> getDevices(ServiceType serviceType)
Specified by:
getDevices in interface Registry

getService

public Service getService(ServiceReference serviceReference)
Specified by:
getService in interface Registry

getResource

public Resource getResource(URI pathQuery)
                     throws IllegalArgumentException
Specified by:
getResource in interface Registry
Throws:
IllegalArgumentException

getResource

public <T extends Resource> T getResource(Class<T> resourceType,
                                          URI pathQuery)
Specified by:
getResource in interface Registry

getResources

public Collection<Resource> getResources()
Specified by:
getResources in interface Registry

getResources

public <T extends Resource> Collection<T> getResources(Class<T> resourceType)
Specified by:
getResources in interface Registry

addResource

public void addResource(Resource resource)
Specified by:
addResource in interface Registry

addResource

public void addResource(Resource resource,
                        int maxAgeSeconds)
Specified by:
addResource in interface Registry

removeResource

public boolean removeResource(Resource resource)
Specified by:
removeResource in interface Registry

addLocalSubscription

public void addLocalSubscription(LocalGENASubscription subscription)
Specified by:
addLocalSubscription in interface Registry

getLocalSubscription

public LocalGENASubscription getLocalSubscription(String subscriptionId)
Specified by:
getLocalSubscription in interface Registry

updateLocalSubscription

public boolean updateLocalSubscription(LocalGENASubscription subscription)
Specified by:
updateLocalSubscription in interface Registry

removeLocalSubscription

public boolean removeLocalSubscription(LocalGENASubscription subscription)
Specified by:
removeLocalSubscription in interface Registry

addRemoteSubscription

public void addRemoteSubscription(RemoteGENASubscription subscription)
Specified by:
addRemoteSubscription in interface Registry

getRemoteSubscription

public RemoteGENASubscription getRemoteSubscription(String subscriptionId)
Specified by:
getRemoteSubscription in interface Registry

updateRemoteSubscription

public void updateRemoteSubscription(RemoteGENASubscription subscription)
Specified by:
updateRemoteSubscription in interface Registry

removeRemoteSubscription

public void removeRemoteSubscription(RemoteGENASubscription subscription)
Specified by:
removeRemoteSubscription in interface Registry

shutdown

public void shutdown()
Specified by:
shutdown in interface Registry

printDebugLog

public void printDebugLog()


Copyright © 2010 Teleal GmbH, Switzerland. All Rights Reserved.