org.teleal.cling.model.meta
Class Device<DI extends DeviceIdentity,D extends Device,S extends Service>

java.lang.Object
  extended by org.teleal.cling.model.meta.Device<DI,D,S>
All Implemented Interfaces:
Validatable
Direct Known Subclasses:
LocalDevice, RemoteDevice

public abstract class Device<DI extends DeviceIdentity,D extends Device,S extends Service>
extends Object
implements Validatable


Constructor Summary
Device(DI identity)
           
Device(DI identity, DeviceType type, DeviceDetails details, Icon[] icons, DeviceService<S>[] deviceServices)
           
Device(DI identity, DeviceType type, DeviceDetails details, Icon[] icons, DeviceService<S>[] deviceServices, D[] embeddedDevices)
           
Device(DI identity, UDAVersion version, DeviceType type, DeviceDetails details, Icon[] icons, DeviceService<S>[] deviceServices, D[] embeddedDevices)
           
 
Method Summary
protected abstract  Resource[] discoverResources()
           
 boolean equals(Object o)
           
protected  Collection<D> find(DeviceType deviceType, D current)
           
protected  Collection<D> find(ServiceType serviceType, D current)
           
protected  D find(UDN udn, D current)
           
abstract  D findDevice(UDN udn)
           
abstract  D[] findDevices(DeviceType deviceType)
           
abstract  D[] findDevices(ServiceType serviceType)
           
abstract  D[] findEmbeddedDevices()
           
protected  Collection<D> findEmbeddedDevices(D current)
           
 ServiceType[] findServiceTypes()
           
protected  Collection<ServiceType> findServiceTypes(Device current)
           
 DeviceDetails getDetails()
           
 DeviceService<S> getDeviceService(ServiceId serviceId)
           
 DeviceService<S>[] getDeviceServices()
           
 List<DeviceService<S>> getDeviceServices(ServiceType serviceType)
           
 String getDisplayString()
           
 D[] getEmbeddedDevices()
           
 DeviceService<S> getFirstDeviceService(ServiceType serviceType)
           
 byte[] getFirstIcon()
           
 Icon[] getIcons()
           
 DI getIdentity()
           
 Resource getLocalResource(URI localPathQuery)
           
 String getLocalURIPrefix()
           
 D getParentDevice()
           
 Resource[] getResources()
           
abstract  D getRoot()
           
 DeviceType getType()
           
 UDAVersion getVersion()
           
 boolean hasDeviceServices()
           
 boolean hasEmbeddedDevices()
           
 int hashCode()
           
 boolean hasIcons()
           
 boolean isRoot()
           
abstract  D newInstance(UDN udn, UDAVersion version, DeviceType type, DeviceDetails details, Icon[] icons, DeviceService<S>[] deviceServices, List<D> embeddedDevices)
           
 URI prefixLocalURI(URI uri)
           
 String toString()
           
 List<ValidationError> validate()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Device

public Device(DI identity)
       throws ValidationException
Throws:
ValidationException

Device

public Device(DI identity,
              DeviceType type,
              DeviceDetails details,
              Icon[] icons,
              DeviceService<S>[] deviceServices)
       throws ValidationException
Throws:
ValidationException

Device

public Device(DI identity,
              DeviceType type,
              DeviceDetails details,
              Icon[] icons,
              DeviceService<S>[] deviceServices,
              D[] embeddedDevices)
       throws ValidationException
Throws:
ValidationException

Device

public Device(DI identity,
              UDAVersion version,
              DeviceType type,
              DeviceDetails details,
              Icon[] icons,
              DeviceService<S>[] deviceServices,
              D[] embeddedDevices)
       throws ValidationException
Throws:
ValidationException
Method Detail

getIdentity

public DI getIdentity()

getVersion

public UDAVersion getVersion()

getType

public DeviceType getType()

getDetails

public DeviceDetails getDetails()

getIcons

public Icon[] getIcons()

hasIcons

public boolean hasIcons()

getDeviceServices

public DeviceService<S>[] getDeviceServices()

hasDeviceServices

public boolean hasDeviceServices()

getEmbeddedDevices

public D[] getEmbeddedDevices()

hasEmbeddedDevices

public boolean hasEmbeddedDevices()

getParentDevice

public D getParentDevice()

getResources

public Resource[] getResources()

isRoot

public boolean isRoot()

getLocalResource

public Resource getLocalResource(URI localPathQuery)

getRoot

public abstract D getRoot()

findEmbeddedDevices

public abstract D[] findEmbeddedDevices()

findDevice

public abstract D findDevice(UDN udn)

findDevices

public abstract D[] findDevices(DeviceType deviceType)

findDevices

public abstract D[] findDevices(ServiceType serviceType)

find

protected D find(UDN udn,
                 D current)

findEmbeddedDevices

protected Collection<D> findEmbeddedDevices(D current)

find

protected Collection<D> find(DeviceType deviceType,
                             D current)

find

protected Collection<D> find(ServiceType serviceType,
                             D current)

getDeviceServices

public List<DeviceService<S>> getDeviceServices(ServiceType serviceType)

getFirstDeviceService

public DeviceService<S> getFirstDeviceService(ServiceType serviceType)

getDeviceService

public DeviceService<S> getDeviceService(ServiceId serviceId)

findServiceTypes

public ServiceType[] findServiceTypes()

findServiceTypes

protected Collection<ServiceType> findServiceTypes(Device current)

getDisplayString

public String getDisplayString()

getFirstIcon

public byte[] getFirstIcon()

getLocalURIPrefix

public String getLocalURIPrefix()

prefixLocalURI

public URI prefixLocalURI(URI uri)

validate

public List<ValidationError> validate()
Specified by:
validate in interface Validatable

equals

public boolean equals(Object o)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

newInstance

public abstract D newInstance(UDN udn,
                              UDAVersion version,
                              DeviceType type,
                              DeviceDetails details,
                              Icon[] icons,
                              DeviceService<S>[] deviceServices,
                              List<D> embeddedDevices)
                                      throws ValidationException
Throws:
ValidationException

discoverResources

protected abstract Resource[] discoverResources()

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2010 Teleal GmbH, Switzerland. All Rights Reserved.