[zb4osgi-changeset] [scm] ZigBee 4 OSGi repository change: r450 - in /projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha: device/api/generic/MainsPowerOutlet.java device/impl/MainsPowerOutletDevice.java driver/core/HAProfile.java

scm-notify at zb4osgi.aaloa.org scm-notify at zb4osgi.aaloa.org
Fri Aug 3 11:11:47 CEST 2012


Author: manlio.bacco
Date: Fri Aug  3 11:11:47 2012
New Revision: 450

Log:
added Mains Power Outlet Device
cosmetic fixes

Added:
    projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/api/generic/MainsPowerOutlet.java   (with props)
    projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/impl/MainsPowerOutletDevice.java   (with props)
Modified:
    projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/driver/core/HAProfile.java

Added: projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/api/generic/MainsPowerOutlet.java
==============================================================================
--- projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/api/generic/MainsPowerOutlet.java (added)
+++ projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/api/generic/MainsPowerOutlet.java Fri Aug  3 11:11:47 2012
@@ -1,0 +1,26 @@
+package it.cnr.isti.zigbee.ha.device.api.generic;
+
+import it.cnr.isti.zigbee.ha.cluster.glue.general.Groups;
+import it.cnr.isti.zigbee.ha.cluster.glue.general.OnOff;
+import it.cnr.isti.zigbee.ha.cluster.glue.general.Scenes;
+import it.cnr.isti.zigbee.ha.driver.ArraysUtil;
+import it.cnr.isti.zigbee.ha.driver.core.HADevice;
+import it.cnr.isti.zigbee.ha.driver.core.HAProfile;
+
+public interface MainsPowerOutlet extends HADevice {
+
+	public static final int DEVICE_ID = 0x0009;
+	public static final String NAME = "Mains Power Outlet";
+	public static final int[] MANDATORY = ArraysUtil.append(HADevice.MANDATORY, new int[]{
+			HAProfile.ON_OFF, HAProfile.SCENES, HAProfile.GROUPS
+	});
+	public static final int[] OPTIONAL = HADevice.OPTIONAL;
+	public static final int[] STANDARD = ArraysUtil.append(MANDATORY, OPTIONAL);
+	public static final int[] CUSTOM = {};
+
+	public OnOff getOnOff();
+
+	public Scenes getScenes();
+
+	public Groups getGroups();
+}

Propchange: projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/api/generic/MainsPowerOutlet.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/impl/MainsPowerOutletDevice.java
==============================================================================
--- projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/impl/MainsPowerOutletDevice.java (added)
+++ projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/impl/MainsPowerOutletDevice.java Fri Aug  3 11:11:47 2012
@@ -1,0 +1,77 @@
+package it.cnr.isti.zigbee.ha.device.impl;
+
+import it.cnr.isti.zigbee.api.ZigBeeDevice;
+import it.cnr.isti.zigbee.ha.cluster.glue.general.Groups;
+import it.cnr.isti.zigbee.ha.cluster.glue.general.OnOff;
+import it.cnr.isti.zigbee.ha.cluster.glue.general.Scenes;
+import it.cnr.isti.zigbee.ha.device.api.generic.MainsPowerOutlet;
+import it.cnr.isti.zigbee.ha.driver.core.HADeviceBase;
+import it.cnr.isti.zigbee.ha.driver.core.HAProfile;
+import it.cnr.isti.zigbee.ha.driver.core.ZigBeeHAException;
+import it.cnr.isti.zigbee.ha.driver.core.reflection.AbstractDeviceDescription;
+import it.cnr.isti.zigbee.ha.driver.core.reflection.DeviceDescription;
+
+import org.osgi.framework.BundleContext;
+
+public class MainsPowerOutletDevice extends HADeviceBase implements MainsPowerOutlet {
+
+	private OnOff onOff;
+	private Scenes scenes;
+	private Groups groups;
+
+	public MainsPowerOutletDevice(BundleContext ctx, ZigBeeDevice zbDevice) throws ZigBeeHAException {
+
+		super(ctx, zbDevice);
+		
+		onOff = (OnOff) addCluster(HAProfile.ON_OFF);
+		groups = (Groups) addCluster(HAProfile.GROUPS);
+		scenes = (Scenes) addCluster(HAProfile.SCENES);
+	}
+
+	public OnOff getOnOff() {
+
+		return onOff;
+	}
+
+	public Scenes getScenes() {
+
+		return scenes;
+	}
+
+	public Groups getGroups() {
+
+		return groups;
+	}
+
+	@Override
+	public String getName() {
+
+		return MainsPowerOutlet.NAME;
+	}
+
+	@Override
+	public DeviceDescription getDescription() {
+
+		return DEVICE_DESCRIPTOR;
+	}
+
+	final static DeviceDescription DEVICE_DESCRIPTOR =  new AbstractDeviceDescription(){
+
+		public int[] getCustomClusters() {
+			return MainsPowerOutlet.CUSTOM;
+		}
+
+		public int[] getMandatoryCluster() {
+			return MainsPowerOutlet.MANDATORY;
+		}
+
+		public int[] getOptionalCluster() {
+			return MainsPowerOutlet.OPTIONAL;
+		}
+
+		public int[] getStandardClusters() {
+			return MainsPowerOutlet.STANDARD;
+		}
+
+	};
+}

Propchange: projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/device/impl/MainsPowerOutletDevice.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/driver/core/HAProfile.java
==============================================================================
--- projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/driver/core/HAProfile.java (original)
+++ projects/zb4osgi/trunk/zigbee.ha.driver/src/main/java/it/cnr/isti/zigbee/ha/driver/core/HAProfile.java Fri Aug  3 11:11:47 2012
@@ -18,10 +18,11 @@
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-*/
+ */
 
 package it.cnr.isti.zigbee.ha.driver.core;
 
+import it.cnr.isti.zigbee.ha.device.api.generic.MainsPowerOutlet;
 import it.cnr.isti.zigbee.ha.device.api.generic.OnOffOutput;
 import it.cnr.isti.zigbee.ha.device.api.hvac.TemperatureSensor;
 import it.cnr.isti.zigbee.ha.device.api.lighting.DimmableLight;
@@ -58,6 +59,7 @@
 
 	public static final int ID = 260;
 
+	//CLUSTERS
 	//Generic
 	public static final int BASIC = Basic.ID;
 	public static final int IDENTIFY = Identify.ID;
@@ -66,17 +68,22 @@
 	public static final int ON_OFF = OnOff.ID;
 	public static final int TIME = Time.ID;
 	public static final int LEVEL_CONTROL = LevelControl.ID;
-	public static final int ONOFF_OUTPUT = OnOffOutput.DEVICE_ID;
 	public static final int ON_OFF_SWITCH_CONFIGURATION = OnOffSwitchConfiguration.ID;
 	public static final int ALARMS = Alarms.ID;
 	public static final int POWER_CONFIGURATION = PowerConfiguration.ID;
 	public static final int DEVICE_TEMPERATURE_CONFIGURATION = DeviceTemperatureConfiguration.ID;
-	
+
 	//Measureament & Sensing
 	public static final int TEMPERATURE_MEASUREMENT = TemperatureMeasurement.ID;
 	public static final int OCCUPANCY_SENSING = OccupacySensing.ID;
 	public static final int RELATIVE_HUMIDITY_MEASUREMENT = RelativeHumidityMeasurement.ID;
-	
+
+
+	//DEVICES
+	//Generic
+	public static final int ONOFF_OUTPUT = OnOffOutput.DEVICE_ID;
+	public static final int MAINS_POWER_OUTLET = MainsPowerOutlet.DEVICE_ID;
+
 	//Lighting
 	public static final int ONOFF_LIGHT = OnOffLight.DEVICE_ID; 
 	public static final int DIMMABLE_LIGHT = DimmableLight.DEVICE_ID;
@@ -85,9 +92,8 @@
 
 	//HVAC
 	public static final int TEMPERATURE_SENSOR = TemperatureSensor.DEVICE_ID;
-	
+
 	//Security & Safety
 	public static final int IAS_ZONE = IASZone.ID;
 	public static final int IAS_WD = IASWD.ID;
-
-}
+}




More information about the Commit mailing list