org.teleal.cling.model.meta
Class Device<DI extends DeviceIdentity,D extends Device,S extends Service>
java.lang.Object
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
Describes either a root or embedded device.
- Author:
- Christian Bauer
Constructor Summary |
Device(DI identity)
|
Device(DI identity,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services)
|
Device(DI identity,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services,
D[] embeddedDevices)
|
Device(DI identity,
UDAVersion version,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services,
D[] embeddedDevices)
|
Method Summary |
abstract Resource[] |
discoverResources(Namespace namespace)
|
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)
|
D[] |
findDevices(DeviceType deviceType)
|
D[] |
findDevices(ServiceType serviceType)
|
D[] |
findEmbeddedDevices()
|
protected Collection<D> |
findEmbeddedDevices(D current)
|
Icon[] |
findIcons()
|
S |
findService(ServiceId serviceId)
|
S |
findService(ServiceType serviceType)
|
S[] |
findServices()
|
S[] |
findServices(ServiceType serviceType)
|
protected Collection<S> |
findServices(ServiceType serviceType,
ServiceId serviceId,
D current)
|
ServiceType[] |
findServiceTypes()
|
DeviceDetails |
getDetails()
|
DeviceDetails |
getDetails(ControlPointInfo info)
|
String |
getDisplayString()
|
abstract D[] |
getEmbeddedDevices()
|
Icon[] |
getIcons()
|
DI |
getIdentity()
|
D |
getParentDevice()
|
abstract D |
getRoot()
|
abstract S[] |
getServices()
|
DeviceType |
getType()
|
UDAVersion |
getVersion()
|
boolean |
hasEmbeddedDevices()
|
int |
hashCode()
|
boolean |
hasIcons()
|
boolean |
hasServices()
|
boolean |
isFullyHydrated()
|
boolean |
isRoot()
|
abstract S |
newInstance(ServiceType serviceType,
ServiceId serviceId,
URI descriptorURI,
URI controlURI,
URI eventSubscriptionURI,
Action<S>[] actions,
StateVariable<S>[] stateVariables)
|
abstract D |
newInstance(UDN udn,
UDAVersion version,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services,
List<D> embeddedDevices)
|
abstract S[] |
newServiceArray(int size)
|
abstract D[] |
toDeviceArray(Collection<D> col)
|
abstract S[] |
toServiceArray(Collection<S> col)
|
String |
toString()
|
List<ValidationError> |
validate()
|
services
protected final S extends Service[] services
embeddedDevices
protected final D extends Device[] embeddedDevices
Device
public Device(DI identity)
throws ValidationException
- Throws:
ValidationException
Device
public Device(DI identity,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services)
throws ValidationException
- Throws:
ValidationException
Device
public Device(DI identity,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services,
D[] embeddedDevices)
throws ValidationException
- Throws:
ValidationException
Device
public Device(DI identity,
UDAVersion version,
DeviceType type,
DeviceDetails details,
Icon[] icons,
S[] services,
D[] embeddedDevices)
throws ValidationException
- Throws:
ValidationException
getIdentity
public DI getIdentity()
getVersion
public UDAVersion getVersion()
getType
public DeviceType getType()
getDetails
public DeviceDetails getDetails()
getDetails
public DeviceDetails getDetails(ControlPointInfo info)
getIcons
public Icon[] getIcons()
hasIcons
public boolean hasIcons()
hasServices
public boolean hasServices()
hasEmbeddedDevices
public boolean hasEmbeddedDevices()
getParentDevice
public D getParentDevice()
isRoot
public boolean isRoot()
getServices
public abstract S[] getServices()
getEmbeddedDevices
public abstract D[] getEmbeddedDevices()
getRoot
public abstract D getRoot()
findDevice
public abstract D findDevice(UDN udn)
findEmbeddedDevices
public D[] findEmbeddedDevices()
findDevices
public D[] findDevices(DeviceType deviceType)
findDevices
public D[] findDevices(ServiceType serviceType)
findIcons
public Icon[] findIcons()
findServices
public S[] findServices()
findServices
public S[] findServices(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)
findServices
protected Collection<S> findServices(ServiceType serviceType,
ServiceId serviceId,
D current)
findService
public S findService(ServiceId serviceId)
findService
public S findService(ServiceType serviceType)
findServiceTypes
public ServiceType[] findServiceTypes()
isFullyHydrated
public boolean isFullyHydrated()
getDisplayString
public String getDisplayString()
validate
public List<ValidationError> validate()
- Specified by:
validate
in interface Validatable
- Returns:
- An empty
List
if all rules validated properly, otherwise, the detected errors.
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,
S[] services,
List<D> embeddedDevices)
throws ValidationException
- Throws:
ValidationException
newInstance
public abstract S newInstance(ServiceType serviceType,
ServiceId serviceId,
URI descriptorURI,
URI controlURI,
URI eventSubscriptionURI,
Action<S>[] actions,
StateVariable<S>[] stateVariables)
throws ValidationException
- Throws:
ValidationException
toDeviceArray
public abstract D[] toDeviceArray(Collection<D> col)
newServiceArray
public abstract S[] newServiceArray(int size)
toServiceArray
public abstract S[] toServiceArray(Collection<S> col)
discoverResources
public abstract Resource[] discoverResources(Namespace namespace)
toString
public String toString()
- Overrides:
toString
in class Object
Copyright © 2011 Teleal GmbH, Switzerland. All Rights Reserved.