Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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

Field Summary
`protected D[]` | `embeddedDevices`
`protected S[]` | `services`

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()`
`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()`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### services

    protected final S extends Service[] services

### embeddedDevices

    protected final D extends Device[] embeddedDevices

Constructor Detail

### 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`

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()

### 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`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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