org.teleal.cling.model
Class DefaultServiceManager<T>

java.lang.Object
  extended by org.teleal.cling.model.DefaultServiceManager<T>
All Implemented Interfaces:
ServiceManager<T>

public class DefaultServiceManager<T>
extends Object
implements ServiceManager<T>

Author:
Christian Bauer

Nested Class Summary
protected  class DefaultServiceManager.DefaultPropertyChangeListener
           
 
Field Summary
protected  ReentrantLock lock
           
protected  PropertyChangeSupport propertyChangeSupport
           
protected  LocalService<T> service
           
protected  Class<T> serviceClass
           
protected  T serviceImpl
           
 
Fields inherited from interface org.teleal.cling.model.ServiceManager
EVENTED_STATE_VARIABLES
 
Constructor Summary
protected DefaultServiceManager(DeviceService<LocalService<T>> deviceService)
           
protected DefaultServiceManager(LocalService<T> service)
           
  DefaultServiceManager(LocalService<T> service, Class<T> serviceClass)
           
 
Method Summary
protected  PropertyChangeListener createPropertyChangeListener(T serviceImpl)
           
protected  PropertyChangeSupport createPropertyChangeSupport(T serviceImpl)
           
protected  T createServiceInstance()
           
 void execute(Command<T> cmd)
           
 T getImplementation()
           
protected  int getLockTimeoutMillis()
           
 PropertyChangeSupport getPropertyChangeSupport()
           
 LocalService<T> getService()
           
protected  void init()
           
protected  void lock()
           
 List<StateVariableValue> readEventedStateVariableValues()
           
 String toString()
           
protected  void unlock()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

service

protected final LocalService<T> service

serviceClass

protected final Class<T> serviceClass

lock

protected final ReentrantLock lock

serviceImpl

protected T serviceImpl

propertyChangeSupport

protected PropertyChangeSupport propertyChangeSupport
Constructor Detail

DefaultServiceManager

protected DefaultServiceManager(DeviceService<LocalService<T>> deviceService)

DefaultServiceManager

protected DefaultServiceManager(LocalService<T> service)

DefaultServiceManager

public DefaultServiceManager(LocalService<T> service,
                             Class<T> serviceClass)
Method Detail

lock

protected void lock()

unlock

protected void unlock()

getLockTimeoutMillis

protected int getLockTimeoutMillis()

getService

public LocalService<T> getService()
Specified by:
getService in interface ServiceManager<T>

getImplementation

public T getImplementation()
Specified by:
getImplementation in interface ServiceManager<T>

getPropertyChangeSupport

public PropertyChangeSupport getPropertyChangeSupport()
Specified by:
getPropertyChangeSupport in interface ServiceManager<T>

execute

public void execute(Command<T> cmd)
             throws Exception
Specified by:
execute in interface ServiceManager<T>
Throws:
Exception

readEventedStateVariableValues

public List<StateVariableValue> readEventedStateVariableValues()
                                                        throws Exception
Specified by:
readEventedStateVariableValues in interface ServiceManager<T>
Throws:
Exception

init

protected void init()

createServiceInstance

protected T createServiceInstance()
                           throws Exception
Throws:
Exception

createPropertyChangeSupport

protected PropertyChangeSupport createPropertyChangeSupport(T serviceImpl)
                                                     throws Exception
Throws:
Exception

createPropertyChangeListener

protected PropertyChangeListener createPropertyChangeListener(T serviceImpl)
                                                       throws Exception
Throws:
Exception

toString

public String toString()
Overrides:
toString in class Object


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