org.universAAL.lddi.knx.driver
Class KnxDpt3Instance

Package class diagram package KnxDpt3Instance
java.lang.Object
  extended by org.universAAL.lddi.knx.interfaces.KnxDriver
      extended by org.universAAL.lddi.knx.driver.KnxDpt3Instance
All Implemented Interfaces:
org.osgi.service.device.Constants, org.osgi.util.tracker.ServiceTrackerCustomizer, IKnxDpt3, IKnxReceiveMessage

public class KnxDpt3Instance
extends KnxDriver
implements IKnxDpt3, IKnxReceiveMessage, org.osgi.util.tracker.ServiceTrackerCustomizer, org.osgi.service.device.Constants

Working instance of the IKnxDpt3 driver. Registers a service/device in OSGi registry. Tracks on the KNX groupDevice service passed in the attach method in KnxDpt3Driver class. This instance is passed to the consuming client (e.g. uAAL exporter bundle). When the KNX groupDevice service disappears, this driver is removed from the consuming client and detached from the groupDevice. This driver handles knx 4-bit unsigned int events (knx datapoint 3), which is dimming step and blind step.

Author:
Thomas Fuxreiter (foex@gmx.at)

Field Summary
 
Fields inherited from class org.universAAL.lddi.knx.interfaces.KnxDriver
client, groupDevice
 
Fields inherited from interface org.universAAL.lddi.knx.groupdevicecategory.IKnxDpt3
CLASS, DECREASE_3_007, DOWN_3_008, INCREASE_3_007, MANUFACTURER, MATCH_CLASS, MATCH_MAKE, MATCH_MODEL, MATCH_SERIAL, MATCH_VERSION, MODEL, MY_DEVICE_CATEGORY, REVISION, SERIAL, STEPCODE_BREAK, UP_3_008
 
Fields inherited from interface org.osgi.service.device.Constants
DEVICE_CATEGORY, DEVICE_DESCRIPTION, DEVICE_SERIAL, DRIVER_ID
 
Constructor Summary
KnxDpt3Instance()
          Empty constructor for Unit Tests.
KnxDpt3Instance(KnxDpt3Driver parent_)
           
 
Method Summary
 Object addingService(org.osgi.framework.ServiceReference reference)
          track on my groupDevice
 void modifiedService(org.osgi.framework.ServiceReference reference, Object service)
           
 void newMessageFromKnxBus(byte[] event)
          Receive low level messages from the knx bus
 void removedService(org.osgi.framework.ServiceReference reference, Object service)
           
 
Methods inherited from class org.universAAL.lddi.knx.interfaces.KnxDriver
attachDriver, clearHexValue, detachDriver, removeDriver, setgroupDevice
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KnxDpt3Instance

public KnxDpt3Instance(KnxDpt3Driver parent_)
Parameters:
c - OSGi BundleContext
sr - Service reference of KNX groupDevice
client - Link to consumer of this driver (e.g. uAAL exporter bundle)

KnxDpt3Instance

public KnxDpt3Instance()
Empty constructor for Unit Tests.

Method Detail

addingService

public Object addingService(org.osgi.framework.ServiceReference reference)
track on my groupDevice

Specified by:
addingService in interface org.osgi.util.tracker.ServiceTrackerCustomizer
Parameters:
IKnxDpt3 - groupDevice service
Returns:
The service object to be tracked for the ServiceReference object or null if the ServiceReference object should not be tracked.

modifiedService

public void modifiedService(org.osgi.framework.ServiceReference reference,
                            Object service)
Specified by:
modifiedService in interface org.osgi.util.tracker.ServiceTrackerCustomizer

removedService

public void removedService(org.osgi.framework.ServiceReference reference,
                           Object service)
Specified by:
removedService in interface org.osgi.util.tracker.ServiceTrackerCustomizer

newMessageFromKnxBus

public void newMessageFromKnxBus(byte[] event)
Description copied from interface: IKnxReceiveMessage
Receive low level messages from the knx bus

Specified by:
newMessageFromKnxBus in interface IKnxReceiveMessage
Parameters:
event - the status/event byte of the knx telegram


Copyright © 2014 universAAL Consortium. All Rights Reserved.