
org.ocap.hn.upnp.client.package.html Maven / Gradle / Ivy
Package org.ocap.hn.upnp.client
Provides UPnP client functionality, permitting access to devices and
services on a home network.
The UPnP Control Point class ({@link org.ocap.hn.upnp.client.UPnPControlPoint})
provides access to devices discovered by the Host device during a UPnP discovery
process as defined by the UPnP Device Architecture specification.
As defined by UPnP, a device consists of a root device and 0 or more
sub-devices. Each device can contain services such as the Content Directory
Service (CDS). Each service can contain actions, e.g. CDS:Search, and state
variables, e.g. CDS:SystemUpdateID. The
{@link org.ocap.hn.upnp.client.UPnPControlPoint#getDevices}
method returns a data structure that represents the UPnP devices, services,
etc., discovered in a home network. The data structure returned matches the
hierarchy of the discovered UPnP device documents.
In the
org.ocap.hn.upnp.client package UPnP entities are represented as follows:
- UPnP Device - {@link org.ocap.hn.upnp.client.UPnPClientDevice}
- UPnP Device Icon - {@link org.ocap.hn.upnp.client.UPnPClientDeviceIcon}
- UPnP Service - {@link org.ocap.hn.upnp.client.UPnPClientService}
- UPnP State Variable - {@link org.ocap.hn.upnp.client.UPnPClientStateVariable}
Objects of these types are immutable in order to represent entities that
actually reside in remote Host devices.
Once an application calls the UPnPControlPoint.getDevices()
method
it can peruse the data structure returned, access the root device for a
specific home network server and exhibit typical UPnP behaviors such as
the following:
- Evaluate device properties, services, and sub-devices.
- Evaluate service properties, actions, and state variables.
- Send an action and get a response.
- Subscribe to state variable events.
In addition to typical UPnP behaviors an application can set itself using
as the incoming and/or outgoing message handler using the
UPnPControlPoint. An incoming message handler can modify incoming
messages before Host device evaluation. An outgoing message handler can
modify outgoing messages before transmission. This is useful when,
for instance, a server device sends non-standard properties in a verbose
manner and an application needs to prune for various reasons.