All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ocap.hn.upnp.client.UPnPClientDevice Maven / Gradle / Ivy

package org.ocap.hn.upnp.client;

import org.ocap.hn.upnp.common.UPnPAdvertisedDevice;


/**
 * This interface provides the client representation of a 
 * UPnP device, associated with a single IP address.
 */
public interface UPnPClientDevice extends UPnPAdvertisedDevice {

    /**
     * Returns the parent UPnP Device of this device, if any.
     *
     * @return This device's parent device. Returns null if this device
     * has no parent.
     */
    UPnPClientDevice getParentDevice();

    /**
     * Gets the embedded devices for this UPnP Device.
     *
     * @return The embedded devices for this device.  If this device
     * has no embedded devices, returns a zero length array.
     * Returns only the next level of embedded devices, not
     * recursing through embedded devices for subsequent
     * levels of embedded devices.
     */
    UPnPClientDevice[] getEmbeddedDevices();

    /**
     * Gets the services supported by this device.  Does not return
     * services held in embedded devices.
     *
     * @return    The services supported by this device.  If the
     * serviceList element in the device description is
     * empty, this method returns a zero length array.
     */
    UPnPClientService[] getServices();

    /**
     * Gets the icons of this device. This returned array is
     * derived from the icon elements within the {@code iconList} element
     * of a device description.
     * If the iconList element in the device description is empty
     * or not present, returns a zero length array.
     *
     * @return The icons that the device declares.
     */
    UPnPClientDeviceIcon[] getIcons();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy