YAACC - UPNP Client and Server
Loading...
Searching...
No Matches
de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager Class Reference

Service manager of the media renderer's RenderingControl service: the full state (volume and mute of the Master channel, ...) as the initial event and the LastChange sent to the subscribers after every change, with the machinery the AVTransport service uses (AsyncLastChangeServiceManager). More...

Inheritance diagram for de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager:
Inheritance graph
Collaboration diagram for de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager:
Collaboration graph

Public Member Functions

 RenderingControlServiceManager (LocalService< AbstractAudioRenderingControl > service, int lockTimeoutMillis, Supplier<? extends AbstractAudioRenderingControl > instanceFactory)
 
- Public Member Functions inherited from de.yaacc.upnp.server.events.AsyncLastChangeServiceManager< T extends LastChangeDelegator >
void fireLastChange ()
 Sends everything that changed since the last event to the subscribers, without the manager lock (see the class description).
 
- Public Member Functions inherited from org.fourthline.cling.support.lastchange.LastChangeAwareServiceManager< T extends LastChangeDelegator >
 LastChangeAwareServiceManager (LocalService< T > localService, LastChangeParser lastChangeParser)
 
 LastChangeAwareServiceManager (LocalService< T > localService, Class< T > serviceClass, LastChangeParser lastChangeParser)
 
- Public Member Functions inherited from org.fourthline.cling.model.DefaultServiceManager< T >
 DefaultServiceManager (LocalService< T > service, Class< T > serviceClass)
 
LocalService< T > getService ()
 
T getImplementation ()
 
PropertyChangeSupport getPropertyChangeSupport ()
 Provides the capability to monitor the service for state changes.
 
void execute (Command< T > cmd) throws Exception
 Double-dispatch of arbitrary commands, used by action executors and state variable accessors.
 
Collection< StateVariableValue > getCurrentState () throws Exception
 Reading the state of a service manually.
 
String toString ()
 
- Public Member Functions inherited from org.fourthline.cling.model.ServiceManager< T >

Protected Member Functions

AbstractAudioRenderingControl createServiceInstance ()
 
List< String > describeChanges (LastChange lastChange)
 What a log line says about the changes that are about to be sent, e.g.
 
String describeCurrentState () throws Exception
 What the log says about the state a new subscriber gets, e.g.
 
- Protected Member Functions inherited from de.yaacc.upnp.server.events.AsyncLastChangeServiceManager< T extends LastChangeDelegator >
 AsyncLastChangeServiceManager (LocalService< T > service, LastChangeParser parser, int lockTimeoutMillis, ScheduledExecutorService executor, String logPrefix)
 
int getLockTimeoutMillis ()
 
final void attachEvents (LastChange lastChange, PropertyChangeSupport support, Object service)
 To be called by createServiceInstance() with the one instance of this manager: its LastChange and the PropertyChangeSupport the subscriptions listen at.
 
boolean isUrgent (LastChange lastChange)
 Whether the changes collected in the LastChange must be sent at once, without waiting for the pace (MIN_EVENT_INTERVAL_MILLIS).
 
Collection< StateVariableValue > readInitialEventedStateVariableValues () throws Exception
 
- Protected Member Functions inherited from org.fourthline.cling.support.lastchange.LastChangeAwareServiceManager< T extends LastChangeDelegator >
LastChangeParser getLastChangeParser ()
 
- Protected Member Functions inherited from org.fourthline.cling.model.DefaultServiceManager< T >
 DefaultServiceManager (LocalService< T > service)
 
void lock ()
 
void unlock ()
 
Collection< StateVariableValue > getCurrentState (String[] variableNames) throws Exception
 
void init ()
 
PropertyChangeSupport createPropertyChangeSupport (T serviceImpl) throws Exception
 
PropertyChangeListener createPropertyChangeListener (T serviceImpl) throws Exception
 

Additional Inherited Members

- Static Public Attributes inherited from de.yaacc.upnp.server.events.AsyncLastChangeServiceManager< T extends LastChangeDelegator >
static final long MIN_EVENT_INTERVAL_MILLIS = 250
 Minimum time between two events (the LastChange is cleared by each one, a lost event is lost for good).
 
- Static Public Attributes inherited from org.fourthline.cling.model.ServiceManager< T >
static final String EVENTED_STATE_VARIABLES = "_EventedStateVariables"
 Use this property name when propagating change events that affect any evented UPnP state variable.
 
- Static Protected Member Functions inherited from de.yaacc.upnp.server.events.AsyncLastChangeServiceManager< T extends LastChangeDelegator >
static ScheduledExecutorService createExecutor (String threadName)
 One idle thread at most, and not even that when nothing is evented (the thread ends after 10 s).
 
- Protected Attributes inherited from org.fourthline.cling.support.lastchange.LastChangeAwareServiceManager< T extends LastChangeDelegator >
final LastChangeParser lastChangeParser
 
- Protected Attributes inherited from org.fourthline.cling.model.DefaultServiceManager< T >
final LocalService< T > service
 
final Class< T > serviceClass
 
final ReentrantLock lock = new ReentrantLock(true)
 
T serviceImpl
 
PropertyChangeSupport propertyChangeSupport
 

Detailed Description

Service manager of the media renderer's RenderingControl service: the full state (volume and mute of the Master channel, ...) as the initial event and the LastChange sent to the subscribers after every change, with the machinery the AVTransport service uses (AsyncLastChangeServiceManager).

Constructor & Destructor Documentation

◆ RenderingControlServiceManager()

de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager.RenderingControlServiceManager ( LocalService< AbstractAudioRenderingControl > service,
int lockTimeoutMillis,
Supplier<? extends AbstractAudioRenderingControl > instanceFactory )
Parameters
instanceFactorycreates the one service instance, when it is first needed
Here is the call graph for this function:

Member Function Documentation

◆ createServiceInstance()

AbstractAudioRenderingControl de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager.createServiceInstance ( )
protected

◆ describeChanges()

List< String > de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager.describeChanges ( LastChange lastChange)
protected

What a log line says about the changes that are about to be sent, e.g.

CurrentPlayMode=NORMAL
(instance 0)
; one text per line. Called while the LastChange is locked: only read it.

Reimplemented from de.yaacc.upnp.server.events.AsyncLastChangeServiceManager< T extends LastChangeDelegator >.

◆ describeCurrentState()

String de.yaacc.upnp.server.renderingcontrol.RenderingControlServiceManager.describeCurrentState ( ) throws Exception
protected

What the log says about the state a new subscriber gets, e.g.

CurrentPlayMode=NORMAL; null for nothing. Called under the manager lock after the state was read.

Reimplemented from de.yaacc.upnp.server.events.AsyncLastChangeServiceManager< T extends LastChangeDelegator >.

Here is the call graph for this function:

The documentation for this class was generated from the following file: