YAACC - UPNP Client and Server
Loading...
Searching...
No Matches
Classes | Public Member Functions | Protected Member Functions | List of all members
org.fourthline.cling.DefaultUpnpServiceConfiguration Class Reference

Default configuration data of a typical UPnP stack. More...

Inheritance diagram for org.fourthline.cling.DefaultUpnpServiceConfiguration:
Inheritance graph
Collaboration diagram for org.fourthline.cling.DefaultUpnpServiceConfiguration:
Collaboration graph

Classes

class  ClingExecutor
 
class  ClingThreadFactory
 

Public Member Functions

 DefaultUpnpServiceConfiguration ()
 Defaults to port '0', ephemeral.
 
 DefaultUpnpServiceConfiguration (int streamListenPort)
 
DatagramProcessor getDatagramProcessor ()
 
SOAPActionProcessor getSoapActionProcessor ()
 
GENAEventProcessor getGenaEventProcessor ()
 
StreamClient createStreamClient ()
 
MulticastReceiver createMulticastReceiver (NetworkAddressFactory networkAddressFactory)
 
DatagramIO createDatagramIO (NetworkAddressFactory networkAddressFactory)
 
StreamServer createStreamServer (ProtocolFactory protocolFactory, NetworkAddressFactory networkAddressFactory)
 
Executor getMulticastReceiverExecutor ()
 
Executor getDatagramIOExecutor ()
 
ExecutorService getStreamServerExecutorService ()
 
DeviceDescriptorBinder getDeviceDescriptorBinderUDA10 ()
 
ServiceDescriptorBinder getServiceDescriptorBinderUDA10 ()
 
ServiceType[] getExclusiveServiceTypes ()
 Returns service types that can be handled by this UPnP stack, all others will be ignored.
 
boolean isReceivedSubscriptionTimeoutIgnored ()
 
UpnpHeaders getDescriptorRetrievalHeaders (RemoteDeviceIdentity identity)
 Optional extra headers for device descriptor retrieval HTTP requests.
 
UpnpHeaders getEventSubscriptionHeaders (RemoteService service)
 Optional extra headers for event subscription (almost HTTP) messages.
 
int getRegistryMaintenanceIntervalMillis ()
 
int getAliveIntervalMillis ()
 
Integer getRemoteDeviceMaxAgeSeconds ()
 Returns the time in seconds a remote device will be registered until it is expired.
 
Executor getAsyncProtocolExecutor ()
 
ExecutorService getSyncProtocolExecutorService ()
 
Namespace getNamespace ()
 
Executor getRegistryMaintainerExecutor ()
 
Executor getRegistryListenerExecutor ()
 
NetworkAddressFactory createNetworkAddressFactory ()
 
void shutdown ()
 Called by the org.fourthline.cling.UpnpService on shutdown, useful to e.g.
 

Protected Member Functions

 DefaultUpnpServiceConfiguration (boolean checkRuntime)
 
 DefaultUpnpServiceConfiguration (int streamListenPort, boolean checkRuntime)
 
NetworkAddressFactory createNetworkAddressFactory (int streamListenPort)
 
DatagramProcessor createDatagramProcessor ()
 
SOAPActionProcessor createSOAPActionProcessor ()
 
GENAEventProcessor createGENAEventProcessor ()
 
DeviceDescriptorBinder createDeviceDescriptorBinderUDA10 ()
 
ServiceDescriptorBinder createServiceDescriptorBinderUDA10 ()
 
Namespace createNamespace ()
 
ExecutorService getDefaultExecutorService ()
 
ExecutorService createDefaultExecutorService ()
 

Detailed Description

Default configuration data of a typical UPnP stack.

This configuration utilizes the default network transport implementation found in org.fourthline.cling.transport.impl.

This configuration utilizes the DOM default descriptor binders found in org.fourthline.cling.binding.xml.

The thread Executor is an Executors.newCachedThreadPool() with a custom ClingThreadFactory (it only sets a thread name).

Note that this pool is effectively unlimited, so the number of threads will grow (and shrink) as needed - or restricted by your JVM.

The default org.fourthline.cling.model.Namespace is configured without any base path or prefix.

Author
Christian Bauer

Member Function Documentation

◆ createDatagramIO()

DatagramIO org.fourthline.cling.DefaultUpnpServiceConfiguration.createDatagramIO ( NetworkAddressFactory  networkAddressFactory)
Parameters
networkAddressFactoryThe configured org.fourthline.cling.transport.spi.NetworkAddressFactory.
Returns
A new instance of the org.fourthline.cling.transport.spi.DatagramIO interface.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ createMulticastReceiver()

MulticastReceiver org.fourthline.cling.DefaultUpnpServiceConfiguration.createMulticastReceiver ( NetworkAddressFactory  networkAddressFactory)
Parameters
networkAddressFactoryThe configured org.fourthline.cling.transport.spi.NetworkAddressFactory.
Returns
A new instance of the org.fourthline.cling.transport.spi.MulticastReceiver interface.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ createNetworkAddressFactory()

NetworkAddressFactory org.fourthline.cling.DefaultUpnpServiceConfiguration.createNetworkAddressFactory ( )
Returns
A new instance of the org.fourthline.cling.transport.spi.NetworkAddressFactory interface.

Implements org.fourthline.cling.UpnpServiceConfiguration.

Referenced by org.fourthline.cling.DefaultUpnpServiceConfiguration.createNetworkAddressFactory().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createStreamClient()

StreamClient org.fourthline.cling.DefaultUpnpServiceConfiguration.createStreamClient ( )

◆ createStreamServer()

StreamServer org.fourthline.cling.DefaultUpnpServiceConfiguration.createStreamServer ( ProtocolFactory  protocolFactory,
NetworkAddressFactory  networkAddressFactory 
)
Parameters
networkAddressFactoryThe configured org.fourthline.cling.transport.spi.NetworkAddressFactory.
Returns
A new instance of the org.fourthline.cling.transport.spi.StreamServer interface.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getAliveIntervalMillis()

int org.fourthline.cling.DefaultUpnpServiceConfiguration.getAliveIntervalMillis ( )
Returns
Defaults to zero, disabling ALIVE flooding.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getAsyncProtocolExecutor()

Executor org.fourthline.cling.DefaultUpnpServiceConfiguration.getAsyncProtocolExecutor ( )
Returns
The executor which runs the processing of asynchronous aspects of the UPnP stack (discovery).

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getDatagramIOExecutor()

Executor org.fourthline.cling.DefaultUpnpServiceConfiguration.getDatagramIOExecutor ( )
Returns
The executor which runs the listening background threads for unicast datagrams.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getDatagramProcessor()

DatagramProcessor org.fourthline.cling.DefaultUpnpServiceConfiguration.getDatagramProcessor ( )

◆ getDescriptorRetrievalHeaders()

UpnpHeaders org.fourthline.cling.DefaultUpnpServiceConfiguration.getDescriptorRetrievalHeaders ( RemoteDeviceIdentity  identity)

Optional extra headers for device descriptor retrieval HTTP requests.

Some devices might require extra headers to recognize your control point, use this method to set these headers. They will be used for every descriptor (XML) retrieval HTTP request by Cling. See org.fourthline.cling.model.profile.ClientInfo for action request messages.

Parameters
identityThe (so far) discovered identity of the remote device.
Returns
null or extra HTTP headers.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getDeviceDescriptorBinderUDA10()

DeviceDescriptorBinder org.fourthline.cling.DefaultUpnpServiceConfiguration.getDeviceDescriptorBinderUDA10 ( )
Returns
The shared implementation of org.fourthline.cling.binding.xml.DeviceDescriptorBinder for the UPnP 1.0 Device Architecture..

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getEventSubscriptionHeaders()

UpnpHeaders org.fourthline.cling.DefaultUpnpServiceConfiguration.getEventSubscriptionHeaders ( RemoteService  service)

Optional extra headers for event subscription (almost HTTP) messages.

Some devices might require extra headers to recognize your control point, use this method to set these headers for GENA subscriptions. Note that the headers will not be applied to actual event messages, only subscribe, unsubscribe, and renewal.

Returns
null or extra HTTP headers.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getExclusiveServiceTypes()

ServiceType[] org.fourthline.cling.DefaultUpnpServiceConfiguration.getExclusiveServiceTypes ( )

Returns service types that can be handled by this UPnP stack, all others will be ignored.

Return null to completely disable remote device and service discovery. All incoming notifications and search responses will then be dropped immediately. This is mostly useful in applications that only provide services with no (remote) control point functionality.

Note that a discovered service type with version 2 or 3 will match an exclusive service type with version 1. UPnP services are required to be backwards compatible, version 2 is a superset of version 1, and version 3 is a superset of version 2, etc.

Returns
An array of service types that are exclusively discovered, no other service will be discovered. A null return value will disable discovery! An empty array means all services will be discovered.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getGenaEventProcessor()

GENAEventProcessor org.fourthline.cling.DefaultUpnpServiceConfiguration.getGenaEventProcessor ( )

◆ getMulticastReceiverExecutor()

Executor org.fourthline.cling.DefaultUpnpServiceConfiguration.getMulticastReceiverExecutor ( )
Returns
The executor which runs the listening background threads for multicast datagrams.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getNamespace()

Namespace org.fourthline.cling.DefaultUpnpServiceConfiguration.getNamespace ( )
Returns
An instance of org.fourthline.cling.model.Namespace for this UPnP stack.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getRegistryListenerExecutor()

Executor org.fourthline.cling.DefaultUpnpServiceConfiguration.getRegistryListenerExecutor ( )
Returns
The executor which runs the notification threads of registry listeners.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getRegistryMaintainerExecutor()

Executor org.fourthline.cling.DefaultUpnpServiceConfiguration.getRegistryMaintainerExecutor ( )
Returns
The executor which runs the background thread for maintaining the registry.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getRegistryMaintenanceIntervalMillis()

int org.fourthline.cling.DefaultUpnpServiceConfiguration.getRegistryMaintenanceIntervalMillis ( )
Returns
Defaults to 1000 milliseconds.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getRemoteDeviceMaxAgeSeconds()

Integer org.fourthline.cling.DefaultUpnpServiceConfiguration.getRemoteDeviceMaxAgeSeconds ( )

Returns the time in seconds a remote device will be registered until it is expired.

This setting is useful on systems which do not support multicast networking (Android on HTC phones, for example). On such a system you will not receive messages when a remote device disappears from the network and you will not receive its periodic heartbeat alive messages. Only an initial search response (UDP unicast) has been received from the remote device, with its proposed maximum age. To avoid (early) expiration of the remote device, you can override its maximum age with this configuration setting, ignoring the initial maximum age sent by the device. You most likely want to return 0 in this case, so that the remote device is never expired unless you manually remove it from the org.fourthline.cling.registry.Registry. You typically remove the device when an action or GENA subscription request to the remote device failed.

Returns
null (the default) to accept the remote device's proposed maximum age, or 0 for unlimited age, or a value in seconds.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getServiceDescriptorBinderUDA10()

ServiceDescriptorBinder org.fourthline.cling.DefaultUpnpServiceConfiguration.getServiceDescriptorBinderUDA10 ( )
Returns
The shared implementation of org.fourthline.cling.binding.xml.ServiceDescriptorBinder for the UPnP 1.0 Device Architecture..

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getSoapActionProcessor()

SOAPActionProcessor org.fourthline.cling.DefaultUpnpServiceConfiguration.getSoapActionProcessor ( )

◆ getStreamServerExecutorService()

ExecutorService org.fourthline.cling.DefaultUpnpServiceConfiguration.getStreamServerExecutorService ( )
Returns
The executor which runs the listening background threads for HTTP requests.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ getSyncProtocolExecutorService()

ExecutorService org.fourthline.cling.DefaultUpnpServiceConfiguration.getSyncProtocolExecutorService ( )
Returns
The executor service which runs the processing of synchronous aspects of the UPnP stack (description, control, GENA).

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ isReceivedSubscriptionTimeoutIgnored()

boolean org.fourthline.cling.DefaultUpnpServiceConfiguration.isReceivedSubscriptionTimeoutIgnored ( )
Returns
Defaults to false.

Implements org.fourthline.cling.UpnpServiceConfiguration.

◆ shutdown()

void org.fourthline.cling.DefaultUpnpServiceConfiguration.shutdown ( )

Called by the org.fourthline.cling.UpnpService on shutdown, useful to e.g.

shutdown thread pools.

Implements org.fourthline.cling.UpnpServiceConfiguration.


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