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:
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:
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.