diff --git a/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclClusterGenerator.java b/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclClusterGenerator.java index 5543473c0c..2c96085fec 100644 --- a/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclClusterGenerator.java +++ b/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclClusterGenerator.java @@ -189,11 +189,10 @@ private void generateZclClusterClasses(ZigBeeXmlCluster cluster, String packageR out.println(); } - out.println(" // Attribute initialisation"); out.println(" @Override"); out.println(" protected Map initializeAttributes() {"); - out.println(" Map attributeMap = new ConcurrentHashMap(" - + attributesServer + ");"); + out.println( + " Map attributeMap = new ConcurrentHashMap<>(" + attributesServer + ");"); if (attributesServer != 0) { out.println(); @@ -217,14 +216,51 @@ private void generateZclClusterClasses(ZigBeeXmlCluster cluster, String packageR } } } - - // TODO: Add client attributes - out.println(); out.println(" return attributeMap;"); out.println(" }"); out.println(); + // TODO: Add client attributes + + if (commandsServer != 0) { + out.println(" @Override"); + out.println(" protected Map> initializeServerCommands() {"); + out.println(" Map> commandMap = new ConcurrentHashMap<>(" + + commandsServer + ");"); + out.println(); + for (final ZigBeeXmlCommand command : cluster.commands) { + if (command.source.equalsIgnoreCase("server")) { + out.println(" commandMap.put(0x" + String.format("%04X", command.code) + ", " + + stringToUpperCamelCase(command.name) + ".class);"); + } + } + out.println(); + + out.println(" return commandMap;"); + out.println(" }"); + out.println(); + } + + if (commandsClient != 0) { + out.println(" @Override"); + out.println(" protected Map> initializeClientCommands() {"); + out.println(" Map> commandMap = new ConcurrentHashMap<>(" + + commandsClient + ");"); + out.println(); + for (final ZigBeeXmlCommand command : cluster.commands) { + if (command.source.equalsIgnoreCase("client")) { + out.println(" commandMap.put(0x" + String.format("%04X", command.code) + ", " + + stringToUpperCamelCase(command.name) + ".class);"); + } + } + out.println(); + + out.println(" return commandMap;"); + out.println(" }"); + out.println(); + } + out.println(" /**"); out.println(" * Default constructor to create a " + cluster.name + " cluster."); out.println(" *"); @@ -397,42 +433,6 @@ private void generateZclClusterClasses(ZigBeeXmlCluster cluster, String packageR out.println(" }"); } - if (commandsServer > 0) { - out.println(); - out.println(" @Override"); - out.println(" public ZclCommand getCommandFromId(int commandId) {"); - out.println(" switch (commandId) {"); - for (final ZigBeeXmlCommand command : cluster.commands) { - if (command.source.equalsIgnoreCase("client")) { - out.println(" case 0x" + String.format("%02X", command.code) + ": // " - + stringToConstant(command.name)); - out.println(" return new " + stringToUpperCamelCase(command.name) + "();"); - } - } - out.println(" default:"); - out.println(" return null;"); - out.println(" }"); - out.println(" }"); - } - - if (commandsClient > 0) { - out.println(); - out.println(" @Override"); - out.println(" public ZclCommand getResponseFromId(int commandId) {"); - out.println(" switch (commandId) {"); - for (final ZigBeeXmlCommand command : cluster.commands) { - if (command.source.equalsIgnoreCase("server")) { - out.println(" case 0x" + String.format("%02X", command.code) + ": // " - + stringToConstant(command.name)); - out.println(" return new " + stringToUpperCamelCase(command.name) + "();"); - } - } - out.println(" default:"); - out.println(" return null;"); - out.println(" }"); - out.println(" }"); - } - out.println("}"); out.flush(); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/ZclCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/ZclCluster.java index 62382c63c1..6f753a5ebe 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/ZclCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/ZclCluster.java @@ -14,6 +14,7 @@ import java.util.Set; import java.util.TreeSet; import java.util.concurrent.Callable; +import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CopyOnWriteArraySet; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; @@ -120,6 +121,18 @@ public abstract class ZclCluster { */ protected Map attributes = initializeAttributes(); + /** + * Map of server side commands supported by the cluster. This contains all server commands, even if they are not + * supported by the remote device. + */ + protected Map> serverCommands = initializeServerCommands(); + + /** + * Map of client side commands supported by the cluster. This contains all client commands, even if they are not + * supported by the remote device. + */ + protected Map> clientCommands = initializeClientCommands(); + /** * The {@link ZclAttributeNormalizer} is used to normalize attribute data types to ensure that data types are * consistent with the ZCL definition. This ensures that the application can rely on consistent and deterministic @@ -141,6 +154,26 @@ public abstract class ZclCluster { */ protected abstract Map initializeAttributes(); + /** + * Abstract method called when the cluster starts to initialise the list of server side commands defined in this + * cluster by the cluster library + * + * @return a {@link Map} of all server side commands this cluster is known to support + */ + protected Map> initializeServerCommands() { + return new ConcurrentHashMap<>(0); + } + + /** + * Abstract method called when the cluster starts to initialise the list of client side commands defined in this + * cluster by the cluster library + * + * @return a {@link Map} of all client side commands this cluster is known to support + */ + protected Map> initializeClientCommands() { + return new ConcurrentHashMap<>(0); + } + /** * Creates a cluster * @@ -933,10 +966,10 @@ public void handleCommand(ZclCommand command) { * found, null is returned. * * @param commandId the command ID - * @return the {@link ZclCommand} or null if no command found. + * @return the {@link ZclCommand} or null if no command was found. */ public ZclCommand getCommandFromId(int commandId) { - return null; + return getCommand(commandId, clientCommands); } /** @@ -944,9 +977,22 @@ public ZclCommand getCommandFromId(int commandId) { * found, null is returned. * * @param commandId the command ID - * @return the {@link ZclCommand} or null if no command found. + * @return the {@link ZclCommand} or null if no command was found. */ public ZclCommand getResponseFromId(int commandId) { + return getCommand(commandId, serverCommands); + } + + private ZclCommand getCommand(int commandId, Map> commands) { + if (!commands.containsKey(commandId)) { + return null; + } + + try { + return commands.get(commandId).getConstructor().newInstance(); + } catch (Exception e) { + logger.debug("Error instantiating cluster command {}, id={}", clusterName, commandId); + } return null; } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclAlarmsCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclAlarmsCluster.java index ab446fa9b5..d27ad34370 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclAlarmsCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclAlarmsCluster.java @@ -45,7 +45,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclAlarmsCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -67,16 +67,37 @@ public class ZclAlarmsCluster extends ZclCluster { */ public static final int ATTR_ALARMCOUNT = 0x0000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(1); + Map attributeMap = new ConcurrentHashMap<>(1); attributeMap.put(ATTR_ALARMCOUNT, new ZclAttribute(ZclClusterType.ALARMS, ATTR_ALARMCOUNT, "Alarm Count", ZclDataType.UNSIGNED_16_BIT_INTEGER, false, true, false, false)); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, AlarmCommand.class); + commandMap.put(0x0001, GetAlarmResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, ResetAlarmCommand.class); + commandMap.put(0x0001, ResetAllAlarmsCommand.class); + commandMap.put(0x0002, GetAlarmCommand.class); + commandMap.put(0x0003, ResetAlarmLogCommand.class); + + return commandMap; + } + /** * Default constructor to create a Alarms cluster. * @@ -245,32 +266,4 @@ public Future getAlarmResponse(Integer status, Integer alarmCode, return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // RESET_ALARM_COMMAND - return new ResetAlarmCommand(); - case 0x01: // RESET_ALL_ALARMS_COMMAND - return new ResetAllAlarmsCommand(); - case 0x02: // GET_ALARM_COMMAND - return new GetAlarmCommand(); - case 0x03: // RESET_ALARM_LOG_COMMAND - return new ResetAlarmLogCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // ALARM_COMMAND - return new AlarmCommand(); - case 0x01: // GET_ALARM_RESPONSE - return new GetAlarmResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBasicCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBasicCluster.java index 3d01c1819a..18eb187879 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBasicCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBasicCluster.java @@ -31,7 +31,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclBasicCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -125,10 +125,9 @@ public class ZclBasicCluster extends ZclCluster { */ public static final int ATTR_SWBUILDID = 0x4000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(14); + Map attributeMap = new ConcurrentHashMap<>(14); attributeMap.put(ATTR_ZCLVERSION, new ZclAttribute(ZclClusterType.BASIC, ATTR_ZCLVERSION, "ZCL Version", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, false)); attributeMap.put(ATTR_APPLICATIONVERSION, new ZclAttribute(ZclClusterType.BASIC, ATTR_APPLICATIONVERSION, "Application Version", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, false)); @@ -148,6 +147,15 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(1); + + commandMap.put(0x0000, ResetToFactoryDefaultsCommand.class); + + return commandMap; + } + /** * Default constructor to create a Basic cluster. * @@ -1142,12 +1150,4 @@ public String getSwBuildId(final long refreshPeriod) { public Future resetToFactoryDefaultsCommand() { return send(new ResetToFactoryDefaultsCommand()); } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBinaryInputBasicCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBinaryInputBasicCluster.java index 0f3f11b08d..c8de93b53b 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBinaryInputBasicCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclBinaryInputBasicCluster.java @@ -29,7 +29,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclBinaryInputBasicCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -165,10 +165,9 @@ public class ZclBinaryInputBasicCluster extends ZclCluster { */ public static final int ATTR_APPLICATIONTYPE = 0x0100; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(9); + Map attributeMap = new ConcurrentHashMap<>(9); attributeMap.put(ATTR_ACTIVETEXT, new ZclAttribute(ZclClusterType.BINARY_INPUT_BASIC, ATTR_ACTIVETEXT, "Active Text", ZclDataType.CHARACTER_STRING, false, true, true, false)); attributeMap.put(ATTR_DESCRIPTION, new ZclAttribute(ZclClusterType.BINARY_INPUT_BASIC, ATTR_DESCRIPTION, "Description", ZclDataType.CHARACTER_STRING, false, true, true, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclColorControlCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclColorControlCluster.java index 1c8fa04716..1559b8d113 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclColorControlCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclColorControlCluster.java @@ -46,7 +46,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:39:00Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclColorControlCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -208,10 +208,9 @@ public class ZclColorControlCluster extends ZclCluster { */ public static final int ATTR_COLORTEMPERATUREMAX = 0x400C; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(19); + Map attributeMap = new ConcurrentHashMap<>(19); attributeMap.put(ATTR_CURRENTHUE, new ZclAttribute(ZclClusterType.COLOR_CONTROL, ATTR_CURRENTHUE, "Current Hue", ZclDataType.UNSIGNED_8_BIT_INTEGER, false, true, false, true)); attributeMap.put(ATTR_CURRENTSATURATION, new ZclAttribute(ZclClusterType.COLOR_CONTROL, ATTR_CURRENTSATURATION, "Current Saturation", ZclDataType.UNSIGNED_8_BIT_INTEGER, false, true, false, true)); @@ -236,6 +235,29 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(15); + + commandMap.put(0x0000, MoveToHueCommand.class); + commandMap.put(0x0001, MoveHueCommand.class); + commandMap.put(0x0002, StepHueCommand.class); + commandMap.put(0x0003, MoveToSaturationCommand.class); + commandMap.put(0x0004, MoveSaturationCommand.class); + commandMap.put(0x0005, StepSaturationCommand.class); + commandMap.put(0x0006, MoveToHueAndSaturationCommand.class); + commandMap.put(0x0007, MoveToColorCommand.class); + commandMap.put(0x0008, MoveColorCommand.class); + commandMap.put(0x0009, StepColorCommand.class); + commandMap.put(0x000A, MoveToColorTemperatureCommand.class); + commandMap.put(0x0040, EnhancedMoveToHueCommand.class); + commandMap.put(0x0041, EnhancedStepHueCommand.class); + commandMap.put(0x0042, EnhancedMoveToHueAndSaturationCommand.class); + commandMap.put(0x0043, ColorLoopSetCommand.class); + + return commandMap; + } + /** * Default constructor to create a Color Control cluster. * @@ -1513,12 +1535,4 @@ public Future colorLoopSetCommand(Integer updateFlags, Integer ac return send(command); } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDehumidificationControlCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDehumidificationControlCluster.java index 23af39383f..5b23e62dfe 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDehumidificationControlCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDehumidificationControlCluster.java @@ -27,7 +27,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T16:51:35Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclDehumidificationControlCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -84,10 +84,9 @@ public class ZclDehumidificationControlCluster extends ZclCluster { */ public static final int ATTR_RELATIVEHUMIDITYDISPLAY = 0x0015; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(8); + Map attributeMap = new ConcurrentHashMap<>(8); attributeMap.put(ATTR_RELATIVEHUMIDITY, new ZclAttribute(ZclClusterType.DEHUMIDIFICATION_CONTROL, ATTR_RELATIVEHUMIDITY, "Relative Humidity", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, false)); attributeMap.put(ATTR_DEHUMIDIFICATIONCOOLING, new ZclAttribute(ZclClusterType.DEHUMIDIFICATION_CONTROL, ATTR_DEHUMIDIFICATIONCOOLING, "Dehumidification Cooling", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDemandResponseAndLoadControlCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDemandResponseAndLoadControlCluster.java index 6057af2c53..10d322b7c5 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDemandResponseAndLoadControlCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDemandResponseAndLoadControlCluster.java @@ -45,7 +45,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T18:52:32Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclDemandResponseAndLoadControlCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -107,14 +107,34 @@ public class ZclDemandResponseAndLoadControlCluster extends ZclCluster { */ public static final int ATTR_DEVICECLASSVALUE = 0x0003; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(0); + Map attributeMap = new ConcurrentHashMap<>(0); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(3); + + commandMap.put(0x0000, LoadControlEventCommand.class); + commandMap.put(0x0001, CancelLoadControlEvent.class); + commandMap.put(0x0002, CancelAllLoadControlEvents.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, ReportEventStatus.class); + commandMap.put(0x0001, GetScheduledEvents.class); + + return commandMap; + } + /** * Default constructor to create a Demand Response And Load Control cluster. * @@ -585,30 +605,4 @@ public Future cancelAllLoadControlEvents(Integer cancelControl) { return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // REPORT_EVENT_STATUS - return new ReportEventStatus(); - case 0x01: // GET_SCHEDULED_EVENTS - return new GetScheduledEvents(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // LOAD_CONTROL_EVENT_COMMAND - return new LoadControlEventCommand(); - case 0x01: // CANCEL_LOAD_CONTROL_EVENT - return new CancelLoadControlEvent(); - case 0x02: // CANCEL_ALL_LOAD_CONTROL_EVENTS - return new CancelAllLoadControlEvents(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDiagnosticsCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDiagnosticsCluster.java index 986cb5afe5..8404301143 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDiagnosticsCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDiagnosticsCluster.java @@ -29,7 +29,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T16:51:35Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclDiagnosticsCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -96,10 +96,9 @@ public class ZclDiagnosticsCluster extends ZclCluster { public static final int ATTR_LASTMESSAGELQI = 0x011C; public static final int ATTR_LASTMESSAGERSSI = 0x011D; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(32); + Map attributeMap = new ConcurrentHashMap<>(32); attributeMap.put(ATTR_NUMBEROFRESETS, new ZclAttribute(ZclClusterType.DIAGNOSTICS, ATTR_NUMBEROFRESETS, "Number Of Resets", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); attributeMap.put(ATTR_PERSISTENTMEMORYWRITES, new ZclAttribute(ZclClusterType.DIAGNOSTICS, ATTR_PERSISTENTMEMORYWRITES, "Persistent Memory Writes", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDoorLockCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDoorLockCluster.java index 8a998e0dbb..85415ecae3 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDoorLockCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclDoorLockCluster.java @@ -56,7 +56,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclDoorLockCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -312,10 +312,9 @@ public class ZclDoorLockCluster extends ZclCluster { */ public static final int ATTR_RFIDPROGRAMMINGEVENTMASK = 0x0047; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(43); + Map attributeMap = new ConcurrentHashMap<>(43); attributeMap.put(ATTR_LOCKSTATE, new ZclAttribute(ZclClusterType.DOOR_LOCK, ATTR_LOCKSTATE, "Lock State", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); attributeMap.put(ATTR_LOCKTYPE, new ZclAttribute(ZclClusterType.DOOR_LOCK, ATTR_LOCKTYPE, "Lock Type", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); @@ -364,6 +363,30 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, LockDoorResponse.class); + commandMap.put(0x0001, UnlockDoorResponse.class); + commandMap.put(0x0002, ToggleResponse.class); + commandMap.put(0x0003, UnlockWithTimeoutResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, LockDoorCommand.class); + commandMap.put(0x0001, UnlockDoorCommand.class); + commandMap.put(0x0002, Toggle.class); + commandMap.put(0x0003, UnlockWithTimeout.class); + + return commandMap; + } + /** * Default constructor to create a Door Lock cluster. * @@ -3278,36 +3301,4 @@ public Future unlockWithTimeoutResponse(Integer status) { return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // LOCK_DOOR_COMMAND - return new LockDoorCommand(); - case 0x01: // UNLOCK_DOOR_COMMAND - return new UnlockDoorCommand(); - case 0x02: // TOGGLE - return new Toggle(); - case 0x03: // UNLOCK_WITH_TIMEOUT - return new UnlockWithTimeout(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // LOCK_DOOR_RESPONSE - return new LockDoorResponse(); - case 0x01: // UNLOCK_DOOR_RESPONSE - return new UnlockDoorResponse(); - case 0x02: // TOGGLE_RESPONSE - return new ToggleResponse(); - case 0x03: // UNLOCK_WITH_TIMEOUT_RESPONSE - return new UnlockWithTimeoutResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclElectricalMeasurementCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclElectricalMeasurementCluster.java index ea88700af9..7326f81f57 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclElectricalMeasurementCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclElectricalMeasurementCluster.java @@ -42,7 +42,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclElectricalMeasurementCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -242,10 +242,9 @@ public class ZclElectricalMeasurementCluster extends ZclCluster { public static final int ATTR_RMSVOLTAGESAGPERIODPHASEC = 0x0A16; public static final int ATTR_RMSVOLTAGESWELLPERIODPHASEC = 0x0A17; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(128); + Map attributeMap = new ConcurrentHashMap<>(128); attributeMap.put(ATTR_MEASUREMENTTYPE, new ZclAttribute(ZclClusterType.ELECTRICAL_MEASUREMENT, ATTR_MEASUREMENTTYPE, "Measurement Type", ZclDataType.BITMAP_32_BIT, true, true, false, false)); attributeMap.put(ATTR_DCVOLTAGE, new ZclAttribute(ZclClusterType.ELECTRICAL_MEASUREMENT, ATTR_DCVOLTAGE, "DC Voltage", ZclDataType.SIGNED_16_BIT_INTEGER, true, true, false, false)); @@ -379,6 +378,26 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, GetProfileInfoResponseCommand.class); + commandMap.put(0x0001, GetMeasurementProfileResponseCommand.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, GetProfileInfoCommand.class); + commandMap.put(0x0001, GetMeasurementProfileCommand.class); + + return commandMap; + } + /** * Default constructor to create a Electrical Measurement cluster. * @@ -7256,28 +7275,4 @@ public Future getMeasurementProfileResponseCommand(Integer startT return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_PROFILE_INFO_COMMAND - return new GetProfileInfoCommand(); - case 0x01: // GET_MEASUREMENT_PROFILE_COMMAND - return new GetMeasurementProfileCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_PROFILE_INFO_RESPONSE_COMMAND - return new GetProfileInfoResponseCommand(); - case 0x01: // GET_MEASUREMENT_PROFILE_RESPONSE_COMMAND - return new GetMeasurementProfileResponseCommand(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFanControlCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFanControlCluster.java index 0533519749..781dfe7afd 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFanControlCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFanControlCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclFanControlCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -51,10 +51,9 @@ public class ZclFanControlCluster extends ZclCluster { */ public static final int ATTR_FANMODESEQUENCE = 0x0001; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(2); + Map attributeMap = new ConcurrentHashMap<>(2); attributeMap.put(ATTR_FANMODE, new ZclAttribute(ZclClusterType.FAN_CONTROL, ATTR_FANMODE, "Fan Mode", ZclDataType.ENUMERATION_8_BIT, false, true, true, true)); attributeMap.put(ATTR_FANMODESEQUENCE, new ZclAttribute(ZclClusterType.FAN_CONTROL, ATTR_FANMODESEQUENCE, "Fan Mode Sequence", ZclDataType.ENUMERATION_8_BIT, false, true, true, true)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFlowMeasurementCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFlowMeasurementCluster.java index de0bb97ccb..abb7421c8b 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFlowMeasurementCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclFlowMeasurementCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclFlowMeasurementCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -78,10 +78,9 @@ public class ZclFlowMeasurementCluster extends ZclCluster { */ public static final int ATTR_TOLERANCE = 0x0003; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(4); + Map attributeMap = new ConcurrentHashMap<>(4); attributeMap.put(ATTR_MEASUREDVALUE, new ZclAttribute(ZclClusterType.FLOW_MEASUREMENT, ATTR_MEASUREDVALUE, "Measured Value", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_MINMEASUREDVALUE, new ZclAttribute(ZclClusterType.FLOW_MEASUREMENT, ATTR_MINMEASUREDVALUE, "Min Measured Value", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclGroupsCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclGroupsCluster.java index 73dd6d3266..c9abb0035e 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclGroupsCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclGroupsCluster.java @@ -62,7 +62,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclGroupsCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -82,16 +82,41 @@ public class ZclGroupsCluster extends ZclCluster { */ public static final int ATTR_NAMESUPPORT = 0x0000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(1); + Map attributeMap = new ConcurrentHashMap<>(1); attributeMap.put(ATTR_NAMESUPPORT, new ZclAttribute(ZclClusterType.GROUPS, ATTR_NAMESUPPORT, "Name Support", ZclDataType.BITMAP_8_BIT, true, true, false, false)); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, AddGroupResponse.class); + commandMap.put(0x0001, ViewGroupResponse.class); + commandMap.put(0x0002, GetGroupMembershipResponse.class); + commandMap.put(0x0003, RemoveGroupResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(6); + + commandMap.put(0x0000, AddGroupCommand.class); + commandMap.put(0x0001, ViewGroupCommand.class); + commandMap.put(0x0002, GetGroupMembershipCommand.class); + commandMap.put(0x0003, RemoveGroupCommand.class); + commandMap.put(0x0004, RemoveAllGroupsCommand.class); + commandMap.put(0x0005, AddGroupIfIdentifyingCommand.class); + + return commandMap; + } + /** * Default constructor to create a Groups cluster. * @@ -360,40 +385,4 @@ public Future removeGroupResponse(Integer status, Integer groupId return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // ADD_GROUP_COMMAND - return new AddGroupCommand(); - case 0x01: // VIEW_GROUP_COMMAND - return new ViewGroupCommand(); - case 0x02: // GET_GROUP_MEMBERSHIP_COMMAND - return new GetGroupMembershipCommand(); - case 0x03: // REMOVE_GROUP_COMMAND - return new RemoveGroupCommand(); - case 0x04: // REMOVE_ALL_GROUPS_COMMAND - return new RemoveAllGroupsCommand(); - case 0x05: // ADD_GROUP_IF_IDENTIFYING_COMMAND - return new AddGroupIfIdentifyingCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // ADD_GROUP_RESPONSE - return new AddGroupResponse(); - case 0x01: // VIEW_GROUP_RESPONSE - return new ViewGroupResponse(); - case 0x02: // GET_GROUP_MEMBERSHIP_RESPONSE - return new GetGroupMembershipResponse(); - case 0x03: // REMOVE_GROUP_RESPONSE - return new RemoveGroupResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasAceCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasAceCluster.java index 0453e05a96..02dd3d3a49 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasAceCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasAceCluster.java @@ -49,7 +49,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclIasAceCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -61,14 +61,48 @@ public class ZclIasAceCluster extends ZclCluster { */ public static final String CLUSTER_NAME = "IAS ACE"; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(0); + Map attributeMap = new ConcurrentHashMap<>(0); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(9); + + commandMap.put(0x0000, ArmResponse.class); + commandMap.put(0x0001, GetZoneIdMapResponse.class); + commandMap.put(0x0002, GetZoneInformationResponse.class); + commandMap.put(0x0003, ZoneStatusChangedCommand.class); + commandMap.put(0x0004, PanelStatusChangedCommand.class); + commandMap.put(0x0005, GetPanelStatusResponse.class); + commandMap.put(0x0006, SetBypassedZoneListCommand.class); + commandMap.put(0x0007, BypassResponse.class); + commandMap.put(0x0008, GetZoneStatusResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(10); + + commandMap.put(0x0000, ArmCommand.class); + commandMap.put(0x0001, BypassCommand.class); + commandMap.put(0x0002, EmergencyCommand.class); + commandMap.put(0x0003, FireCommand.class); + commandMap.put(0x0004, PanicCommand.class); + commandMap.put(0x0005, GetZoneIdMapCommand.class); + commandMap.put(0x0006, GetZoneInformationCommand.class); + commandMap.put(0x0007, GetPanelStatusCommand.class); + commandMap.put(0x0008, GetBypassedZoneListCommand.class); + commandMap.put(0x0009, GetZoneStatusCommand.class); + + return commandMap; + } + /** * Default constructor to create a IAS ACE cluster. * @@ -472,58 +506,4 @@ public Future getZoneStatusResponse(Boolean zoneStatusComplete, I return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // ARM_COMMAND - return new ArmCommand(); - case 0x01: // BYPASS_COMMAND - return new BypassCommand(); - case 0x02: // EMERGENCY_COMMAND - return new EmergencyCommand(); - case 0x03: // FIRE_COMMAND - return new FireCommand(); - case 0x04: // PANIC_COMMAND - return new PanicCommand(); - case 0x05: // GET_ZONE_ID_MAP_COMMAND - return new GetZoneIdMapCommand(); - case 0x06: // GET_ZONE_INFORMATION_COMMAND - return new GetZoneInformationCommand(); - case 0x07: // GET_PANEL_STATUS_COMMAND - return new GetPanelStatusCommand(); - case 0x08: // GET_BYPASSED_ZONE_LIST_COMMAND - return new GetBypassedZoneListCommand(); - case 0x09: // GET_ZONE_STATUS_COMMAND - return new GetZoneStatusCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // ARM_RESPONSE - return new ArmResponse(); - case 0x01: // GET_ZONE_ID_MAP_RESPONSE - return new GetZoneIdMapResponse(); - case 0x02: // GET_ZONE_INFORMATION_RESPONSE - return new GetZoneInformationResponse(); - case 0x03: // ZONE_STATUS_CHANGED_COMMAND - return new ZoneStatusChangedCommand(); - case 0x04: // PANEL_STATUS_CHANGED_COMMAND - return new PanelStatusChangedCommand(); - case 0x05: // GET_PANEL_STATUS_RESPONSE - return new GetPanelStatusResponse(); - case 0x06: // SET_BYPASSED_ZONE_LIST_COMMAND - return new SetBypassedZoneListCommand(); - case 0x07: // BYPASS_RESPONSE - return new BypassResponse(); - case 0x08: // GET_ZONE_STATUS_RESPONSE - return new GetZoneStatusResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasWdCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasWdCluster.java index aa266daf5b..b2daf382a1 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasWdCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasWdCluster.java @@ -33,7 +33,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclIasWdCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -52,16 +52,25 @@ public class ZclIasWdCluster extends ZclCluster { */ public static final int ATTR_MAXDURATION = 0x0000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(1); + Map attributeMap = new ConcurrentHashMap<>(1); attributeMap.put(ATTR_MAXDURATION, new ZclAttribute(ZclClusterType.IAS_WD, ATTR_MAXDURATION, "Max Duration", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, true, false)); return attributeMap; } + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, StartWarningCommand.class); + commandMap.put(0x0001, Squawk.class); + + return commandMap; + } + /** * Default constructor to create a IAS WD cluster. * @@ -190,12 +199,4 @@ public Future squawk(Integer squawkInfo) { return send(command); } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasZoneCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasZoneCluster.java index 06daead30e..f6c7514128 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasZoneCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIasZoneCluster.java @@ -36,7 +36,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclIasZoneCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -111,10 +111,9 @@ public class ZclIasZoneCluster extends ZclCluster { */ public static final int ATTR_CURRENTZONESENSITIVITYLEVEL = 0x0013; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(7); + Map attributeMap = new ConcurrentHashMap<>(7); attributeMap.put(ATTR_ZONESTATE, new ZclAttribute(ZclClusterType.IAS_ZONE, ATTR_ZONESTATE, "Zone State", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); attributeMap.put(ATTR_ZONETYPE, new ZclAttribute(ZclClusterType.IAS_ZONE, ATTR_ZONETYPE, "Zone Type", ZclDataType.ENUMERATION_16_BIT, true, true, false, false)); @@ -127,6 +126,27 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, ZoneStatusChangeNotificationCommand.class); + commandMap.put(0x0001, ZoneEnrollRequestCommand.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(3); + + commandMap.put(0x0000, ZoneEnrollResponse.class); + commandMap.put(0x0001, InitiateNormalOperationModeCommand.class); + commandMap.put(0x0002, InitiateTestModeCommand.class); + + return commandMap; + } + /** * Default constructor to create a IAS Zone cluster. * @@ -773,30 +793,4 @@ public Future zoneEnrollRequestCommand(Integer zoneType, Integer return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // ZONE_ENROLL_RESPONSE - return new ZoneEnrollResponse(); - case 0x01: // INITIATE_NORMAL_OPERATION_MODE_COMMAND - return new InitiateNormalOperationModeCommand(); - case 0x02: // INITIATE_TEST_MODE_COMMAND - return new InitiateTestModeCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // ZONE_STATUS_CHANGE_NOTIFICATION_COMMAND - return new ZoneStatusChangeNotificationCommand(); - case 0x01: // ZONE_ENROLL_REQUEST_COMMAND - return new ZoneEnrollRequestCommand(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIdentifyCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIdentifyCluster.java index 91aed55c54..b66a372294 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIdentifyCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIdentifyCluster.java @@ -36,7 +36,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclIdentifyCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -63,16 +63,34 @@ public class ZclIdentifyCluster extends ZclCluster { */ public static final int ATTR_IDENTIFYTIME = 0x0000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(1); + Map attributeMap = new ConcurrentHashMap<>(1); attributeMap.put(ATTR_IDENTIFYTIME, new ZclAttribute(ZclClusterType.IDENTIFY, ATTR_IDENTIFYTIME, "Identify Time", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, true, false)); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(1); + + commandMap.put(0x0000, IdentifyQueryResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, IdentifyCommand.class); + commandMap.put(0x0001, IdentifyQueryCommand.class); + + return commandMap; + } + /** * Default constructor to create a Identify cluster. * @@ -237,26 +255,4 @@ public Future identifyQueryResponse(Integer identifyTime) { return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // IDENTIFY_COMMAND - return new IdentifyCommand(); - case 0x01: // IDENTIFY_QUERY_COMMAND - return new IdentifyQueryCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // IDENTIFY_QUERY_RESPONSE - return new IdentifyQueryResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceLevelSensingCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceLevelSensingCluster.java index 8b1606756f..aa8bf15406 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceLevelSensingCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceLevelSensingCluster.java @@ -29,7 +29,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclIlluminanceLevelSensingCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -70,10 +70,9 @@ public class ZclIlluminanceLevelSensingCluster extends ZclCluster { */ public static final int ATTR_ILLUMINANCETARGETLEVEL = 0x0010; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(3); + Map attributeMap = new ConcurrentHashMap<>(3); attributeMap.put(ATTR_LEVELSTATUS, new ZclAttribute(ZclClusterType.ILLUMINANCE_LEVEL_SENSING, ATTR_LEVELSTATUS, "Level Status", ZclDataType.ENUMERATION_8_BIT, true, true, false, true)); attributeMap.put(ATTR_LIGHTSENSORTYPE, new ZclAttribute(ZclClusterType.ILLUMINANCE_LEVEL_SENSING, ATTR_LIGHTSENSORTYPE, "Light Sensor Type", ZclDataType.ENUMERATION_8_BIT, false, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceMeasurementCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceMeasurementCluster.java index 0098a39abb..05ffd1cd5b 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceMeasurementCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclIlluminanceMeasurementCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclIlluminanceMeasurementCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -79,10 +79,9 @@ public class ZclIlluminanceMeasurementCluster extends ZclCluster { */ public static final int ATTR_LIGHTSENSORTYPE = 0x0004; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(5); + Map attributeMap = new ConcurrentHashMap<>(5); attributeMap.put(ATTR_MEASUREDVALUE, new ZclAttribute(ZclClusterType.ILLUMINANCE_MEASUREMENT, ATTR_MEASUREDVALUE, "Measured Value", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_MINMEASUREDVALUE, new ZclAttribute(ZclClusterType.ILLUMINANCE_MEASUREMENT, ATTR_MINMEASUREDVALUE, "Min Measured Value", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclKeyEstablishmentCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclKeyEstablishmentCluster.java index 4de1b4dd5e..71efddd7a9 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclKeyEstablishmentCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclKeyEstablishmentCluster.java @@ -63,7 +63,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclKeyEstablishmentCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -91,16 +91,38 @@ public class ZclKeyEstablishmentCluster extends ZclCluster { */ public static final int ATTR_SERVERKEYESTABLISHMENTSUITE = 0x0000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(1); + Map attributeMap = new ConcurrentHashMap<>(1); attributeMap.put(ATTR_SERVERKEYESTABLISHMENTSUITE, new ZclAttribute(ZclClusterType.KEY_ESTABLISHMENT, ATTR_SERVERKEYESTABLISHMENTSUITE, "Server Key Establishment Suite", ZclDataType.ENUMERATION_16_BIT, true, true, false, false)); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, InitiateKeyEstablishmentResponse.class); + commandMap.put(0x0001, EphemeralDataResponse.class); + commandMap.put(0x0002, ConfirmKeyResponse.class); + commandMap.put(0x0003, TerminateKeyEstablishment.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(3); + + commandMap.put(0x0000, InitiateKeyEstablishmentRequestCommand.class); + commandMap.put(0x0001, EphemeralDataRequestCommand.class); + commandMap.put(0x0002, ConfirmKeyDataRequestCommand.class); + + return commandMap; + } + /** * Default constructor to create a Key Establishment cluster. * @@ -411,34 +433,4 @@ public Future terminateKeyEstablishment(Integer statusCode, Integ return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // INITIATE_KEY_ESTABLISHMENT_REQUEST_COMMAND - return new InitiateKeyEstablishmentRequestCommand(); - case 0x01: // EPHEMERAL_DATA_REQUEST_COMMAND - return new EphemeralDataRequestCommand(); - case 0x02: // CONFIRM_KEY_DATA_REQUEST_COMMAND - return new ConfirmKeyDataRequestCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // INITIATE_KEY_ESTABLISHMENT_RESPONSE - return new InitiateKeyEstablishmentResponse(); - case 0x01: // EPHEMERAL_DATA_RESPONSE - return new EphemeralDataResponse(); - case 0x02: // CONFIRM_KEY_RESPONSE - return new ConfirmKeyResponse(); - case 0x03: // TERMINATE_KEY_ESTABLISHMENT - return new TerminateKeyEstablishment(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclLevelControlCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclLevelControlCluster.java index fef6519177..2f15afd92e 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclLevelControlCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclLevelControlCluster.java @@ -52,7 +52,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclLevelControlCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -113,10 +113,9 @@ public class ZclLevelControlCluster extends ZclCluster { */ public static final int ATTR_DEFAULTMOVERATE = 0x0014; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(7); + Map attributeMap = new ConcurrentHashMap<>(7); attributeMap.put(ATTR_CURRENTLEVEL, new ZclAttribute(ZclClusterType.LEVEL_CONTROL, ATTR_CURRENTLEVEL, "Current Level", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_REMAININGTIME, new ZclAttribute(ZclClusterType.LEVEL_CONTROL, ATTR_REMAININGTIME, "Remaining Time", ZclDataType.UNSIGNED_16_BIT_INTEGER, false, true, false, false)); @@ -129,6 +128,22 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(8); + + commandMap.put(0x0000, MoveToLevelCommand.class); + commandMap.put(0x0001, MoveCommand.class); + commandMap.put(0x0002, StepCommand.class); + commandMap.put(0x0003, StopCommand.class); + commandMap.put(0x0004, MoveToLevelWithOnOffCommand.class); + commandMap.put(0x0005, MoveWithOnOffCommand.class); + commandMap.put(0x0006, StepWithOnOffCommand.class); + commandMap.put(0x0007, Stop2Command.class); + + return commandMap; + } + /** * Default constructor to create a Level Control cluster. * @@ -734,12 +749,4 @@ public Future stepWithOnOffCommand(Integer stepMode, Integer step public Future stop2Command() { return send(new Stop2Command()); } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMessagingCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMessagingCluster.java index 0825f12ed9..7044dcdf2e 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMessagingCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMessagingCluster.java @@ -40,7 +40,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclMessagingCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -52,14 +52,37 @@ public class ZclMessagingCluster extends ZclCluster { */ public static final String CLUSTER_NAME = "Messaging"; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(0); + Map attributeMap = new ConcurrentHashMap<>(0); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, GetLastMessage.class); + commandMap.put(0x0001, MessageConfirmation.class); + commandMap.put(0x0002, GetMessageCancellation.class); + commandMap.put(0x0003, CancelAllMessages.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, DisplayMessageCommand.class); + commandMap.put(0x0001, CancelMessageCommand.class); + commandMap.put(0x0002, DisplayProtectedMessageCommand.class); + commandMap.put(0x0003, CancelAllMessagesCommand.class); + + return commandMap; + } + /** * Default constructor to create a Messaging cluster. * @@ -253,36 +276,4 @@ public Future cancelAllMessages(Calendar implementationDateTime) return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // DISPLAY_MESSAGE_COMMAND - return new DisplayMessageCommand(); - case 0x01: // CANCEL_MESSAGE_COMMAND - return new CancelMessageCommand(); - case 0x02: // DISPLAY_PROTECTED_MESSAGE_COMMAND - return new DisplayProtectedMessageCommand(); - case 0x03: // CANCEL_ALL_MESSAGES_COMMAND - return new CancelAllMessagesCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_LAST_MESSAGE - return new GetLastMessage(); - case 0x01: // MESSAGE_CONFIRMATION - return new MessageConfirmation(); - case 0x02: // GET_MESSAGE_CANCELLATION - return new GetMessageCancellation(); - case 0x03: // CANCEL_ALL_MESSAGES - return new CancelAllMessages(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMeteringCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMeteringCluster.java index 5cd9ced4e3..03c7cdfcc7 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMeteringCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMeteringCluster.java @@ -67,7 +67,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclMeteringCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -2648,10 +2648,9 @@ public class ZclMeteringCluster extends ZclCluster { public static final int ATTR_PREVIOUSMONTH23ALTERNATIVECONSUMPTIONRECEIVED = 0x0C5A; public static final int ATTR_PREVIOUSMONTH25ALTERNATIVECONSUMPTIONRECEIVED = 0x0C5C; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(198); + Map attributeMap = new ConcurrentHashMap<>(198); attributeMap.put(ATTR_CURRENTSUMMATIONDELIVERED, new ZclAttribute(ZclClusterType.METERING, ATTR_CURRENTSUMMATIONDELIVERED, "Current Summation Delivered", ZclDataType.UNSIGNED_48_BIT_INTEGER, true, true, false, false)); attributeMap.put(ATTR_CURRENTSUMMATIONRECEIVED, new ZclAttribute(ZclClusterType.METERING, ATTR_CURRENTSUMMATIONRECEIVED, "Current Summation Received", ZclDataType.UNSIGNED_48_BIT_INTEGER, false, true, false, false)); @@ -3517,6 +3516,51 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(14); + + commandMap.put(0x0000, GetProfileResponse.class); + commandMap.put(0x0001, RequestMirror.class); + commandMap.put(0x0002, RemoveMirror.class); + commandMap.put(0x0003, RequestFastPollModeResponse.class); + commandMap.put(0x0004, ScheduleSnapshotResponse.class); + commandMap.put(0x0005, TakeSnapshotResponse.class); + commandMap.put(0x0006, PublishSnapshot.class); + commandMap.put(0x0007, GetSampledDataResponse.class); + commandMap.put(0x0008, ConfigureMirror.class); + commandMap.put(0x0009, ConfigureNotificationScheme.class); + commandMap.put(0x000A, ConfigureNotificationFlags.class); + commandMap.put(0x000B, GetNotifiedMessage.class); + commandMap.put(0x000C, SupplyStatusResponse.class); + commandMap.put(0x000D, StartSamplingResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(15); + + commandMap.put(0x0000, GetProfile.class); + commandMap.put(0x0001, RequestMirrorResponse.class); + commandMap.put(0x0002, MirrorRemoved.class); + commandMap.put(0x0003, RequestFastPollMode.class); + commandMap.put(0x0004, ScheduleSnapshot.class); + commandMap.put(0x0005, TakeSnapshot.class); + commandMap.put(0x0006, GetSnapshot.class); + commandMap.put(0x0007, StartSampling.class); + commandMap.put(0x0008, GetSampledData.class); + commandMap.put(0x0009, MirrorReportAttributeResponse.class); + commandMap.put(0x000A, ResetLoadLimitCounter.class); + commandMap.put(0x000B, ChangeSupply.class); + commandMap.put(0x000C, LocalChangeSupply.class); + commandMap.put(0x000D, SetSupplyStatus.class); + commandMap.put(0x000E, SetUncontrolledFlowThreshold.class); + + return commandMap; + } + /** * Default constructor to create a Metering cluster. * @@ -16757,78 +16801,4 @@ public Future startSamplingResponse(Integer sampleId) { return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_PROFILE - return new GetProfile(); - case 0x01: // REQUEST_MIRROR_RESPONSE - return new RequestMirrorResponse(); - case 0x02: // MIRROR_REMOVED - return new MirrorRemoved(); - case 0x03: // REQUEST_FAST_POLL_MODE - return new RequestFastPollMode(); - case 0x04: // SCHEDULE_SNAPSHOT - return new ScheduleSnapshot(); - case 0x05: // TAKE_SNAPSHOT - return new TakeSnapshot(); - case 0x06: // GET_SNAPSHOT - return new GetSnapshot(); - case 0x07: // START_SAMPLING - return new StartSampling(); - case 0x08: // GET_SAMPLED_DATA - return new GetSampledData(); - case 0x09: // MIRROR_REPORT_ATTRIBUTE_RESPONSE - return new MirrorReportAttributeResponse(); - case 0x0A: // RESET_LOAD_LIMIT_COUNTER - return new ResetLoadLimitCounter(); - case 0x0B: // CHANGE_SUPPLY - return new ChangeSupply(); - case 0x0C: // LOCAL_CHANGE_SUPPLY - return new LocalChangeSupply(); - case 0x0D: // SET_SUPPLY_STATUS - return new SetSupplyStatus(); - case 0x0E: // SET_UNCONTROLLED_FLOW_THRESHOLD - return new SetUncontrolledFlowThreshold(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_PROFILE_RESPONSE - return new GetProfileResponse(); - case 0x01: // REQUEST_MIRROR - return new RequestMirror(); - case 0x02: // REMOVE_MIRROR - return new RemoveMirror(); - case 0x03: // REQUEST_FAST_POLL_MODE_RESPONSE - return new RequestFastPollModeResponse(); - case 0x04: // SCHEDULE_SNAPSHOT_RESPONSE - return new ScheduleSnapshotResponse(); - case 0x05: // TAKE_SNAPSHOT_RESPONSE - return new TakeSnapshotResponse(); - case 0x06: // PUBLISH_SNAPSHOT - return new PublishSnapshot(); - case 0x07: // GET_SAMPLED_DATA_RESPONSE - return new GetSampledDataResponse(); - case 0x08: // CONFIGURE_MIRROR - return new ConfigureMirror(); - case 0x09: // CONFIGURE_NOTIFICATION_SCHEME - return new ConfigureNotificationScheme(); - case 0x0A: // CONFIGURE_NOTIFICATION_FLAGS - return new ConfigureNotificationFlags(); - case 0x0B: // GET_NOTIFIED_MESSAGE - return new GetNotifiedMessage(); - case 0x0C: // SUPPLY_STATUS_RESPONSE - return new SupplyStatusResponse(); - case 0x0D: // START_SAMPLING_RESPONSE - return new StartSamplingResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateInputBasicCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateInputBasicCluster.java index f9b0d8b748..8021233401 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateInputBasicCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateInputBasicCluster.java @@ -30,7 +30,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclMultistateInputBasicCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -147,10 +147,9 @@ public class ZclMultistateInputBasicCluster extends ZclCluster { */ public static final int ATTR_APPLICATIONTYPE = 0x0100; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(8); + Map attributeMap = new ConcurrentHashMap<>(8); attributeMap.put(ATTR_STATETEXT, new ZclAttribute(ZclClusterType.MULTISTATE_INPUT_BASIC, ATTR_STATETEXT, "State Text", ZclDataType.CHARACTER_STRING, false, true, true, false)); attributeMap.put(ATTR_DESCRIPTION, new ZclAttribute(ZclClusterType.MULTISTATE_INPUT_BASIC, ATTR_DESCRIPTION, "Description", ZclDataType.CHARACTER_STRING, false, true, true, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateOutputBasicCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateOutputBasicCluster.java index 0f1a303f77..dcd8472c84 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateOutputBasicCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateOutputBasicCluster.java @@ -29,7 +29,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclMultistateOutputBasicCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -151,10 +151,9 @@ public class ZclMultistateOutputBasicCluster extends ZclCluster { */ public static final int ATTR_APPLICATIONTYPE = 0x0100; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(9); + Map attributeMap = new ConcurrentHashMap<>(9); attributeMap.put(ATTR_STATETEXT, new ZclAttribute(ZclClusterType.MULTISTATE_OUTPUT_BASIC, ATTR_STATETEXT, "State Text", ZclDataType.CHARACTER_STRING, false, true, true, false)); attributeMap.put(ATTR_DESCRIPTION, new ZclAttribute(ZclClusterType.MULTISTATE_OUTPUT_BASIC, ATTR_DESCRIPTION, "Description", ZclDataType.CHARACTER_STRING, false, true, true, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateValueBasicCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateValueBasicCluster.java index 318db64288..fdad6dd4a5 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateValueBasicCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclMultistateValueBasicCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclMultistateValueBasicCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -150,10 +150,9 @@ public class ZclMultistateValueBasicCluster extends ZclCluster { */ public static final int ATTR_APPLICATIONTYPE = 0x0100; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(9); + Map attributeMap = new ConcurrentHashMap<>(9); attributeMap.put(ATTR_STATETEXT, new ZclAttribute(ZclClusterType.MULTISTATE_VALUE_BASIC, ATTR_STATETEXT, "State Text", ZclDataType.CHARACTER_STRING, false, true, true, false)); attributeMap.put(ATTR_DESCRIPTION, new ZclAttribute(ZclClusterType.MULTISTATE_VALUE_BASIC, ATTR_DESCRIPTION, "Description", ZclDataType.CHARACTER_STRING, false, true, true, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOccupancySensingCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOccupancySensingCluster.java index 0a1b2a02d1..21f404d71d 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOccupancySensingCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOccupancySensingCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclOccupancySensingCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -97,10 +97,9 @@ public class ZclOccupancySensingCluster extends ZclCluster { */ public static final int ATTR_ULTRASONICUNOCCUPIEDTOOCCUPIEDTHRESHOLD = 0x0022; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(8); + Map attributeMap = new ConcurrentHashMap<>(8); attributeMap.put(ATTR_OCCUPANCY, new ZclAttribute(ZclClusterType.OCCUPANCY_SENSING, ATTR_OCCUPANCY, "Occupancy", ZclDataType.BITMAP_8_BIT, true, true, false, true)); attributeMap.put(ATTR_OCCUPANCYSENSORTYPE, new ZclAttribute(ZclClusterType.OCCUPANCY_SENSING, ATTR_OCCUPANCYSENSORTYPE, "Occupancy Sensor Type", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffCluster.java index 3280fa098e..35118373cc 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffCluster.java @@ -34,7 +34,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclOnOffCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -86,10 +86,9 @@ public class ZclOnOffCluster extends ZclCluster { */ public static final int ATTR_OFFWAITTIME = 0x4002; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(4); + Map attributeMap = new ConcurrentHashMap<>(4); attributeMap.put(ATTR_ONOFF, new ZclAttribute(ZclClusterType.ON_OFF, ATTR_ONOFF, "On Off", ZclDataType.BOOLEAN, true, true, false, true)); attributeMap.put(ATTR_GLOBALSCENECONTROL, new ZclAttribute(ZclClusterType.ON_OFF, ATTR_GLOBALSCENECONTROL, "Global Scene Control", ZclDataType.BOOLEAN, true, true, false, false)); @@ -99,6 +98,20 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(6); + + commandMap.put(0x0000, OffCommand.class); + commandMap.put(0x0001, OnCommand.class); + commandMap.put(0x0002, ToggleCommand.class); + commandMap.put(0x0040, OffWithEffectCommand.class); + commandMap.put(0x0041, OnWithRecallGlobalSceneCommand.class); + commandMap.put(0x0042, OnWithTimedOffCommand.class); + + return commandMap; + } + /** * Default constructor to create a On/Off cluster. * @@ -550,12 +563,4 @@ public Future onWithTimedOffCommand(Integer onOffControl, Integer return send(command); } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffSwitchConfigurationCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffSwitchConfigurationCluster.java index 4995259bfe..3c01b37e33 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffSwitchConfigurationCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOnOffSwitchConfigurationCluster.java @@ -27,7 +27,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclOnOffSwitchConfigurationCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -51,10 +51,9 @@ public class ZclOnOffSwitchConfigurationCluster extends ZclCluster { */ public static final int ATTR_SWITCHACTIONS = 0x0010; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(2); + Map attributeMap = new ConcurrentHashMap<>(2); attributeMap.put(ATTR_SWITCHTYPE, new ZclAttribute(ZclClusterType.ON_OFF_SWITCH_CONFIGURATION, ATTR_SWITCHTYPE, "Switch Type", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); attributeMap.put(ATTR_SWITCHACTIONS, new ZclAttribute(ZclClusterType.ON_OFF_SWITCH_CONFIGURATION, ATTR_SWITCHACTIONS, "Switch Actions", ZclDataType.ENUMERATION_8_BIT, true, true, true, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOtaUpgradeCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOtaUpgradeCluster.java index 49312375be..651965688d 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOtaUpgradeCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclOtaUpgradeCluster.java @@ -62,7 +62,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T18:52:32Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclOtaUpgradeCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -158,14 +158,39 @@ public class ZclOtaUpgradeCluster extends ZclCluster { */ public static final int ATTR_IMAGESTAMP = 0x000A; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(0); + Map attributeMap = new ConcurrentHashMap<>(0); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(5); + + commandMap.put(0x0000, ImageNotifyCommand.class); + commandMap.put(0x0002, QueryNextImageResponse.class); + commandMap.put(0x0005, ImageBlockResponse.class); + commandMap.put(0x0007, UpgradeEndResponse.class); + commandMap.put(0x0009, QuerySpecificFileResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(5); + + commandMap.put(0x0001, QueryNextImageCommand.class); + commandMap.put(0x0003, ImageBlockCommand.class); + commandMap.put(0x0004, ImagePageCommand.class); + commandMap.put(0x0006, UpgradeEndCommand.class); + commandMap.put(0x0008, QuerySpecificFileCommand.class); + + return commandMap; + } + /** * Default constructor to create a Ota Upgrade cluster. * @@ -1329,40 +1354,4 @@ public Future querySpecificFileResponse(ZclStatus status, Integer return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x01: // QUERY_NEXT_IMAGE_COMMAND - return new QueryNextImageCommand(); - case 0x03: // IMAGE_BLOCK_COMMAND - return new ImageBlockCommand(); - case 0x04: // IMAGE_PAGE_COMMAND - return new ImagePageCommand(); - case 0x06: // UPGRADE_END_COMMAND - return new UpgradeEndCommand(); - case 0x08: // QUERY_SPECIFIC_FILE_COMMAND - return new QuerySpecificFileCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // IMAGE_NOTIFY_COMMAND - return new ImageNotifyCommand(); - case 0x02: // QUERY_NEXT_IMAGE_RESPONSE - return new QueryNextImageResponse(); - case 0x05: // IMAGE_BLOCK_RESPONSE - return new ImageBlockResponse(); - case 0x07: // UPGRADE_END_RESPONSE - return new UpgradeEndResponse(); - case 0x09: // QUERY_SPECIFIC_FILE_RESPONSE - return new QuerySpecificFileResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPollControlCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPollControlCluster.java index 093c21fbac..fadb9ad03d 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPollControlCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPollControlCluster.java @@ -45,7 +45,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclPollControlCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -132,10 +132,9 @@ public class ZclPollControlCluster extends ZclCluster { */ public static final int ATTR_FASTPOLLTIMEOUTMIN = 0x0006; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(7); + Map attributeMap = new ConcurrentHashMap<>(7); attributeMap.put(ATTR_CHECKININTERVAL, new ZclAttribute(ZclClusterType.POLL_CONTROL, ATTR_CHECKININTERVAL, "Checkin Interval", ZclDataType.UNSIGNED_32_BIT_INTEGER, true, true, true, true)); attributeMap.put(ATTR_LONGPOLLINTERVAL, new ZclAttribute(ZclClusterType.POLL_CONTROL, ATTR_LONGPOLLINTERVAL, "Long Poll Interval", ZclDataType.UNSIGNED_32_BIT_INTEGER, true, true, false, true)); @@ -148,6 +147,27 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(1); + + commandMap.put(0x0000, CheckInCommand.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(4); + + commandMap.put(0x0000, CheckInResponse.class); + commandMap.put(0x0001, FastPollStopCommand.class); + commandMap.put(0x0002, SetLongPollIntervalCommand.class); + commandMap.put(0x0003, SetShortPollIntervalCommand.class); + + return commandMap; + } + /** * Default constructor to create a Poll Control cluster. * @@ -860,30 +880,4 @@ public Future setShortPollIntervalCommand(Integer newShortPollInt public Future checkInCommand() { return send(new CheckInCommand()); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // CHECK_IN_RESPONSE - return new CheckInResponse(); - case 0x01: // FAST_POLL_STOP_COMMAND - return new FastPollStopCommand(); - case 0x02: // SET_LONG_POLL_INTERVAL_COMMAND - return new SetLongPollIntervalCommand(); - case 0x03: // SET_SHORT_POLL_INTERVAL_COMMAND - return new SetShortPollIntervalCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // CHECK_IN_COMMAND - return new CheckInCommand(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPowerConfigurationCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPowerConfigurationCluster.java index 4c7cc1744c..d59e4a3248 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPowerConfigurationCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPowerConfigurationCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclPowerConfigurationCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -201,10 +201,9 @@ public class ZclPowerConfigurationCluster extends ZclCluster { */ public static final int ATTR_BATTERYALARMSTATE = 0x003E; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(23); + Map attributeMap = new ConcurrentHashMap<>(23); attributeMap.put(ATTR_MAINSVOLTAGE, new ZclAttribute(ZclClusterType.POWER_CONFIGURATION, ATTR_MAINSVOLTAGE, "Mains Voltage", ZclDataType.UNSIGNED_16_BIT_INTEGER, false, true, false, false)); attributeMap.put(ATTR_MAINSFREQUENCY, new ZclAttribute(ZclClusterType.POWER_CONFIGURATION, ATTR_MAINSFREQUENCY, "Mains Frequency", ZclDataType.UNSIGNED_16_BIT_INTEGER, false, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPrepaymentCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPrepaymentCluster.java index a9f1bff3a9..71527b7c9e 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPrepaymentCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPrepaymentCluster.java @@ -65,7 +65,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclPrepaymentCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -603,10 +603,9 @@ public class ZclPrepaymentCluster extends ZclCluster { */ public static final int ATTR_HISTORICALFREEZETIME = 0x055C; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(131); + Map attributeMap = new ConcurrentHashMap<>(131); attributeMap.put(ATTR_PAYMENTCONTROLCONFIGURATION, new ZclAttribute(ZclClusterType.PREPAYMENT, ATTR_PAYMENTCONTROLCONFIGURATION, "Payment Control Configuration", ZclDataType.BITMAP_16_BIT, true, true, false, false)); attributeMap.put(ATTR_CREDITREMAINING, new ZclAttribute(ZclClusterType.PREPAYMENT, ATTR_CREDITREMAINING, "Credit Remaining", ZclDataType.SIGNED_32_BIT_INTEGER, true, true, false, false)); @@ -743,6 +742,39 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(5); + + commandMap.put(0x0001, PublishPrepaySnapshot.class); + commandMap.put(0x0002, ChangePaymentModeResponse.class); + commandMap.put(0x0003, ConsumerTopUpResponse.class); + commandMap.put(0x0005, PublishTopUpLog.class); + commandMap.put(0x0006, PublishDebtLog.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(12); + + commandMap.put(0x0000, SelectAvailableEmergencyCredit.class); + commandMap.put(0x0002, ChangeDebt.class); + commandMap.put(0x0003, EmergencyCreditSetup.class); + commandMap.put(0x0004, ConsumerTopUp.class); + commandMap.put(0x0005, CreditAdjustment.class); + commandMap.put(0x0006, ChangePaymentMode.class); + commandMap.put(0x0007, GetPrepaySnapshot.class); + commandMap.put(0x0008, GetTopUpLog.class); + commandMap.put(0x0009, SetLowCreditWarningLevel.class); + commandMap.put(0x000A, GetDebtRepaymentLog.class); + commandMap.put(0x000B, SetMaximumCreditLimit.class); + commandMap.put(0x000C, SetOverallDebtCap.class); + + return commandMap; + } + /** * Default constructor to create a Prepayment cluster. * @@ -8980,54 +9012,4 @@ public Future publishDebtLog(Integer commandIndex, Integer totalN return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // SELECT_AVAILABLE_EMERGENCY_CREDIT - return new SelectAvailableEmergencyCredit(); - case 0x02: // CHANGE_DEBT - return new ChangeDebt(); - case 0x03: // EMERGENCY_CREDIT_SETUP - return new EmergencyCreditSetup(); - case 0x04: // CONSUMER_TOP_UP - return new ConsumerTopUp(); - case 0x05: // CREDIT_ADJUSTMENT - return new CreditAdjustment(); - case 0x06: // CHANGE_PAYMENT_MODE - return new ChangePaymentMode(); - case 0x07: // GET_PREPAY_SNAPSHOT - return new GetPrepaySnapshot(); - case 0x08: // GET_TOP_UP_LOG - return new GetTopUpLog(); - case 0x09: // SET_LOW_CREDIT_WARNING_LEVEL - return new SetLowCreditWarningLevel(); - case 0x0A: // GET_DEBT_REPAYMENT_LOG - return new GetDebtRepaymentLog(); - case 0x0B: // SET_MAXIMUM_CREDIT_LIMIT - return new SetMaximumCreditLimit(); - case 0x0C: // SET_OVERALL_DEBT_CAP - return new SetOverallDebtCap(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x01: // PUBLISH_PREPAY_SNAPSHOT - return new PublishPrepaySnapshot(); - case 0x02: // CHANGE_PAYMENT_MODE_RESPONSE - return new ChangePaymentModeResponse(); - case 0x03: // CONSUMER_TOP_UP_RESPONSE - return new ConsumerTopUpResponse(); - case 0x05: // PUBLISH_TOP_UP_LOG - return new PublishTopUpLog(); - case 0x06: // PUBLISH_DEBT_LOG - return new PublishDebtLog(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPressureMeasurementCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPressureMeasurementCluster.java index 999bb12b92..ad2f534af8 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPressureMeasurementCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPressureMeasurementCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclPressureMeasurementCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -101,10 +101,9 @@ public class ZclPressureMeasurementCluster extends ZclCluster { */ public static final int ATTR_SCALE = 0x0014; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(9); + Map attributeMap = new ConcurrentHashMap<>(9); attributeMap.put(ATTR_MEASUREDVALUE, new ZclAttribute(ZclClusterType.PRESSURE_MEASUREMENT, ATTR_MEASUREDVALUE, "Measured Value", ZclDataType.SIGNED_16_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_MINMEASUREDVALUE, new ZclAttribute(ZclClusterType.PRESSURE_MEASUREMENT, ATTR_MINMEASUREDVALUE, "Min Measured Value", ZclDataType.SIGNED_16_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPriceCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPriceCluster.java index d93ce4b86e..b267c69bd6 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPriceCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclPriceCluster.java @@ -72,7 +72,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclPriceCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -3679,10 +3679,9 @@ public class ZclPriceCluster extends ZclCluster { public static final int ATTR_RECEIVEDLASTBILLINGPERIODDURATION = 0x8703; public static final int ATTR_RECEIVEDLASTBILLINGPERIODCONSOLIDATEDBILL = 0x8704; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(135); + Map attributeMap = new ConcurrentHashMap<>(135); attributeMap.put(ATTR_TIER1PRICELABEL, new ZclAttribute(ZclClusterType.PRICE, ATTR_TIER1PRICELABEL, "Tier 1 Price Label", ZclDataType.CHARACTER_STRING, false, true, true, false)); attributeMap.put(ATTR_TIER2PRICELABEL, new ZclAttribute(ZclClusterType.PRICE, ATTR_TIER2PRICELABEL, "Tier 2 Price Label", ZclDataType.CHARACTER_STRING, false, true, true, false)); @@ -4714,6 +4713,54 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(15); + + commandMap.put(0x0000, PublishPriceCommand.class); + commandMap.put(0x0001, PublishBlockPeriodCommand.class); + commandMap.put(0x0002, PublishConversionFactorCommand.class); + commandMap.put(0x0003, PublishCalorificValueCommand.class); + commandMap.put(0x0004, PublishTariffInformationCommand.class); + commandMap.put(0x0005, PublishPriceMatrixCommand.class); + commandMap.put(0x0006, PublishBlockThresholdsCommand.class); + commandMap.put(0x0007, PublishCo2ValueCommand.class); + commandMap.put(0x0008, PublishTierLabelsCommand.class); + commandMap.put(0x0009, PublishBillingPeriodCommand.class); + commandMap.put(0x000A, PublishConsolidatedBillCommand.class); + commandMap.put(0x000B, PublishCppEventCommand.class); + commandMap.put(0x000C, PublishCreditPaymentCommand.class); + commandMap.put(0x000D, PublishCurrencyConversionCommand.class); + commandMap.put(0x000E, CancelTariffCommand.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(17); + + commandMap.put(0x0000, GetCurrentPriceCommand.class); + commandMap.put(0x0001, GetScheduledPricesCommand.class); + commandMap.put(0x0002, PriceAcknowledgementCommand.class); + commandMap.put(0x0003, GetBlockPeriodCommand.class); + commandMap.put(0x0004, GetConversionFactorCommand.class); + commandMap.put(0x0005, GetCalorificValueCommand.class); + commandMap.put(0x0006, GetTariffInformationCommand.class); + commandMap.put(0x0007, GetPriceMatrixCommand.class); + commandMap.put(0x0008, GetBlockThresholdsCommand.class); + commandMap.put(0x0009, GetCo2ValueCommand.class); + commandMap.put(0x000A, GetTierLabelsCommand.class); + commandMap.put(0x000B, GetBillingPeriodCommand.class); + commandMap.put(0x000C, GetConsolidatedBillCommand.class); + commandMap.put(0x000D, CppEventResponse.class); + commandMap.put(0x000E, GetCreditPaymentCommand.class); + commandMap.put(0x000F, GetCurrencyConversionCommand.class); + commandMap.put(0x0010, GetTariffCancellationCommand.class); + + return commandMap; + } + /** * Default constructor to create a Price cluster. * @@ -12031,84 +12078,4 @@ public Future cancelTariffCommand(Integer providerId, Integer iss return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_CURRENT_PRICE_COMMAND - return new GetCurrentPriceCommand(); - case 0x01: // GET_SCHEDULED_PRICES_COMMAND - return new GetScheduledPricesCommand(); - case 0x02: // PRICE_ACKNOWLEDGEMENT_COMMAND - return new PriceAcknowledgementCommand(); - case 0x03: // GET_BLOCK_PERIOD_COMMAND - return new GetBlockPeriodCommand(); - case 0x04: // GET_CONVERSION_FACTOR_COMMAND - return new GetConversionFactorCommand(); - case 0x05: // GET_CALORIFIC_VALUE_COMMAND - return new GetCalorificValueCommand(); - case 0x06: // GET_TARIFF_INFORMATION_COMMAND - return new GetTariffInformationCommand(); - case 0x07: // GET_PRICE_MATRIX_COMMAND - return new GetPriceMatrixCommand(); - case 0x08: // GET_BLOCK_THRESHOLDS_COMMAND - return new GetBlockThresholdsCommand(); - case 0x09: // GET_CO2_VALUE_COMMAND - return new GetCo2ValueCommand(); - case 0x0A: // GET_TIER_LABELS_COMMAND - return new GetTierLabelsCommand(); - case 0x0B: // GET_BILLING_PERIOD_COMMAND - return new GetBillingPeriodCommand(); - case 0x0C: // GET_CONSOLIDATED_BILL_COMMAND - return new GetConsolidatedBillCommand(); - case 0x0D: // CPP_EVENT_RESPONSE - return new CppEventResponse(); - case 0x0E: // GET_CREDIT_PAYMENT_COMMAND - return new GetCreditPaymentCommand(); - case 0x0F: // GET_CURRENCY_CONVERSION_COMMAND - return new GetCurrencyConversionCommand(); - case 0x10: // GET_TARIFF_CANCELLATION_COMMAND - return new GetTariffCancellationCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // PUBLISH_PRICE_COMMAND - return new PublishPriceCommand(); - case 0x01: // PUBLISH_BLOCK_PERIOD_COMMAND - return new PublishBlockPeriodCommand(); - case 0x02: // PUBLISH_CONVERSION_FACTOR_COMMAND - return new PublishConversionFactorCommand(); - case 0x03: // PUBLISH_CALORIFIC_VALUE_COMMAND - return new PublishCalorificValueCommand(); - case 0x04: // PUBLISH_TARIFF_INFORMATION_COMMAND - return new PublishTariffInformationCommand(); - case 0x05: // PUBLISH_PRICE_MATRIX_COMMAND - return new PublishPriceMatrixCommand(); - case 0x06: // PUBLISH_BLOCK_THRESHOLDS_COMMAND - return new PublishBlockThresholdsCommand(); - case 0x07: // PUBLISH_CO2_VALUE_COMMAND - return new PublishCo2ValueCommand(); - case 0x08: // PUBLISH_TIER_LABELS_COMMAND - return new PublishTierLabelsCommand(); - case 0x09: // PUBLISH_BILLING_PERIOD_COMMAND - return new PublishBillingPeriodCommand(); - case 0x0A: // PUBLISH_CONSOLIDATED_BILL_COMMAND - return new PublishConsolidatedBillCommand(); - case 0x0B: // PUBLISH_CPP_EVENT_COMMAND - return new PublishCppEventCommand(); - case 0x0C: // PUBLISH_CREDIT_PAYMENT_COMMAND - return new PublishCreditPaymentCommand(); - case 0x0D: // PUBLISH_CURRENCY_CONVERSION_COMMAND - return new PublishCurrencyConversionCommand(); - case 0x0E: // CANCEL_TARIFF_COMMAND - return new CancelTariffCommand(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRelativeHumidityMeasurementCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRelativeHumidityMeasurementCluster.java index 35e69401da..d0087aa145 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRelativeHumidityMeasurementCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRelativeHumidityMeasurementCluster.java @@ -29,7 +29,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclRelativeHumidityMeasurementCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -78,10 +78,9 @@ public class ZclRelativeHumidityMeasurementCluster extends ZclCluster { */ public static final int ATTR_TOLERANCE = 0x0003; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(4); + Map attributeMap = new ConcurrentHashMap<>(4); attributeMap.put(ATTR_MEASUREDVALUE, new ZclAttribute(ZclClusterType.RELATIVE_HUMIDITY_MEASUREMENT, ATTR_MEASUREDVALUE, "Measured Value", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_MINMEASUREDVALUE, new ZclAttribute(ZclClusterType.RELATIVE_HUMIDITY_MEASUREMENT, ATTR_MINMEASUREDVALUE, "Min Measured Value", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRssiLocationCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRssiLocationCluster.java index ad353d5b30..617139e78d 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRssiLocationCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclRssiLocationCluster.java @@ -48,7 +48,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T16:51:35Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclRssiLocationCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -162,10 +162,9 @@ public class ZclRssiLocationCluster extends ZclCluster { */ public static final int ATTR_NUMBERRSSIMEASUREMENTS = 0x0017; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(13); + Map attributeMap = new ConcurrentHashMap<>(13); attributeMap.put(ATTR_LOCATIONTYPE, new ZclAttribute(ZclClusterType.RSSI_LOCATION, ATTR_LOCATIONTYPE, "Location Type", ZclDataType.DATA_8_BIT, true, true, false, false)); attributeMap.put(ATTR_LOCATIONMETHOD, new ZclAttribute(ZclClusterType.RSSI_LOCATION, ATTR_LOCATIONMETHOD, "Location Method", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); @@ -184,6 +183,37 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(8); + + commandMap.put(0x0000, DeviceConfigurationResponse.class); + commandMap.put(0x0001, LocationDataResponse.class); + commandMap.put(0x0002, LocationDataNotificationCommand.class); + commandMap.put(0x0003, CompactLocationDataNotificationCommand.class); + commandMap.put(0x0004, RssiPingCommand.class); + commandMap.put(0x0005, RssiRequestCommand.class); + commandMap.put(0x0006, ReportRssiMeasurementsCommand.class); + commandMap.put(0x0007, RequestOwnLocationCommand.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(7); + + commandMap.put(0x0000, SetAbsoluteLocationCommand.class); + commandMap.put(0x0001, SetDeviceConfigurationCommand.class); + commandMap.put(0x0002, GetDeviceConfigurationCommand.class); + commandMap.put(0x0003, GetLocationDataCommand.class); + commandMap.put(0x0004, RssiResponse.class); + commandMap.put(0x0005, SendPingsCommand.class); + commandMap.put(0x0006, AnchorNodeAnnounceCommand.class); + + return commandMap; + } + /** * Default constructor to create a RSSI Location cluster. * @@ -1435,50 +1465,4 @@ public Future requestOwnLocationCommand(IeeeAddress requestingAdd return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // SET_ABSOLUTE_LOCATION_COMMAND - return new SetAbsoluteLocationCommand(); - case 0x01: // SET_DEVICE_CONFIGURATION_COMMAND - return new SetDeviceConfigurationCommand(); - case 0x02: // GET_DEVICE_CONFIGURATION_COMMAND - return new GetDeviceConfigurationCommand(); - case 0x03: // GET_LOCATION_DATA_COMMAND - return new GetLocationDataCommand(); - case 0x04: // RSSI_RESPONSE - return new RssiResponse(); - case 0x05: // SEND_PINGS_COMMAND - return new SendPingsCommand(); - case 0x06: // ANCHOR_NODE_ANNOUNCE_COMMAND - return new AnchorNodeAnnounceCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // DEVICE_CONFIGURATION_RESPONSE - return new DeviceConfigurationResponse(); - case 0x01: // LOCATION_DATA_RESPONSE - return new LocationDataResponse(); - case 0x02: // LOCATION_DATA_NOTIFICATION_COMMAND - return new LocationDataNotificationCommand(); - case 0x03: // COMPACT_LOCATION_DATA_NOTIFICATION_COMMAND - return new CompactLocationDataNotificationCommand(); - case 0x04: // RSSI_PING_COMMAND - return new RssiPingCommand(); - case 0x05: // RSSI_REQUEST_COMMAND - return new RssiRequestCommand(); - case 0x06: // REPORT_RSSI_MEASUREMENTS_COMMAND - return new ReportRssiMeasurementsCommand(); - case 0x07: // REQUEST_OWN_LOCATION_COMMAND - return new RequestOwnLocationCommand(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclScenesCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclScenesCluster.java index 4df63a5b9c..815fcf78f7 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclScenesCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclScenesCluster.java @@ -51,7 +51,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclScenesCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -103,10 +103,9 @@ public class ZclScenesCluster extends ZclCluster { */ public static final int ATTR_LASTCONFIGUREDBY = 0x0005; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(6); + Map attributeMap = new ConcurrentHashMap<>(6); attributeMap.put(ATTR_SCENECOUNT, new ZclAttribute(ZclClusterType.SCENES, ATTR_SCENECOUNT, "Scene Count", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, false)); attributeMap.put(ATTR_CURRENTSCENE, new ZclAttribute(ZclClusterType.SCENES, ATTR_CURRENTSCENE, "Current Scene", ZclDataType.UNSIGNED_8_BIT_INTEGER, true, true, false, false)); @@ -118,6 +117,35 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(6); + + commandMap.put(0x0000, AddSceneResponse.class); + commandMap.put(0x0001, ViewSceneResponse.class); + commandMap.put(0x0002, RemoveSceneResponse.class); + commandMap.put(0x0003, RemoveAllScenesResponse.class); + commandMap.put(0x0004, StoreSceneResponse.class); + commandMap.put(0x0005, GetSceneMembershipResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(7); + + commandMap.put(0x0000, AddSceneCommand.class); + commandMap.put(0x0001, ViewSceneCommand.class); + commandMap.put(0x0002, RemoveSceneCommand.class); + commandMap.put(0x0003, RemoveAllScenesCommand.class); + commandMap.put(0x0004, StoreSceneCommand.class); + commandMap.put(0x0005, RecallSceneCommand.class); + commandMap.put(0x0006, GetSceneMembershipCommand.class); + + return commandMap; + } + /** * Default constructor to create a Scenes cluster. * @@ -763,46 +791,4 @@ public Future getSceneMembershipResponse(Integer status, Integer return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // ADD_SCENE_COMMAND - return new AddSceneCommand(); - case 0x01: // VIEW_SCENE_COMMAND - return new ViewSceneCommand(); - case 0x02: // REMOVE_SCENE_COMMAND - return new RemoveSceneCommand(); - case 0x03: // REMOVE_ALL_SCENES_COMMAND - return new RemoveAllScenesCommand(); - case 0x04: // STORE_SCENE_COMMAND - return new StoreSceneCommand(); - case 0x05: // RECALL_SCENE_COMMAND - return new RecallSceneCommand(); - case 0x06: // GET_SCENE_MEMBERSHIP_COMMAND - return new GetSceneMembershipCommand(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // ADD_SCENE_RESPONSE - return new AddSceneResponse(); - case 0x01: // VIEW_SCENE_RESPONSE - return new ViewSceneResponse(); - case 0x02: // REMOVE_SCENE_RESPONSE - return new RemoveSceneResponse(); - case 0x03: // REMOVE_ALL_SCENES_RESPONSE - return new RemoveAllScenesResponse(); - case 0x04: // STORE_SCENE_RESPONSE - return new StoreSceneResponse(); - case 0x05: // GET_SCENE_MEMBERSHIP_RESPONSE - return new GetSceneMembershipResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclSmartEnergyTunnelingCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclSmartEnergyTunnelingCluster.java index 28d6dafa0f..6bb6c47add 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclSmartEnergyTunnelingCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclSmartEnergyTunnelingCluster.java @@ -66,7 +66,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclSmartEnergyTunnelingCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -87,16 +87,45 @@ public class ZclSmartEnergyTunnelingCluster extends ZclCluster { */ public static final int ATTR_CLOSETUNNELTIMEOUT = 0x0000; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(1); + Map attributeMap = new ConcurrentHashMap<>(1); attributeMap.put(ATTR_CLOSETUNNELTIMEOUT, new ZclAttribute(ZclClusterType.SMART_ENERGY_TUNNELING, ATTR_CLOSETUNNELTIMEOUT, "Close Tunnel Timeout", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(7); + + commandMap.put(0x0000, RequestTunnelResponse.class); + commandMap.put(0x0001, TransferDataServerToClient.class); + commandMap.put(0x0002, TransferDataErrorServerToClient.class); + commandMap.put(0x0003, AckTransferDataServerToClient.class); + commandMap.put(0x0004, ReadyDataServerToClient.class); + commandMap.put(0x0005, SupportedTunnelProtocolsResponse.class); + commandMap.put(0x0006, TunnelClosureNotification.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(7); + + commandMap.put(0x0000, RequestTunnel.class); + commandMap.put(0x0001, CloseTunnel.class); + commandMap.put(0x0002, TransferDataClientToServer.class); + commandMap.put(0x0003, TransferDataErrorClientToServer.class); + commandMap.put(0x0004, AckTransferDataClientToServer.class); + commandMap.put(0x0005, ReadyDataClientToServer.class); + commandMap.put(0x0006, GetSupportedTunnelProtocols.class); + + return commandMap; + } + /** * Default constructor to create a Smart Energy Tunneling cluster. * @@ -502,48 +531,4 @@ public Future tunnelClosureNotification(Integer tunnelId) { return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // REQUEST_TUNNEL - return new RequestTunnel(); - case 0x01: // CLOSE_TUNNEL - return new CloseTunnel(); - case 0x02: // TRANSFER_DATA_CLIENT_TO_SERVER - return new TransferDataClientToServer(); - case 0x03: // TRANSFER_DATA_ERROR_CLIENT_TO_SERVER - return new TransferDataErrorClientToServer(); - case 0x04: // ACK_TRANSFER_DATA_CLIENT_TO_SERVER - return new AckTransferDataClientToServer(); - case 0x05: // READY_DATA_CLIENT_TO_SERVER - return new ReadyDataClientToServer(); - case 0x06: // GET_SUPPORTED_TUNNEL_PROTOCOLS - return new GetSupportedTunnelProtocols(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // REQUEST_TUNNEL_RESPONSE - return new RequestTunnelResponse(); - case 0x01: // TRANSFER_DATA_SERVER_TO_CLIENT - return new TransferDataServerToClient(); - case 0x02: // TRANSFER_DATA_ERROR_SERVER_TO_CLIENT - return new TransferDataErrorServerToClient(); - case 0x03: // ACK_TRANSFER_DATA_SERVER_TO_CLIENT - return new AckTransferDataServerToClient(); - case 0x04: // READY_DATA_SERVER_TO_CLIENT - return new ReadyDataServerToClient(); - case 0x05: // SUPPORTED_TUNNEL_PROTOCOLS_RESPONSE - return new SupportedTunnelProtocolsResponse(); - case 0x06: // TUNNEL_CLOSURE_NOTIFICATION - return new TunnelClosureNotification(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTemperatureMeasurementCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTemperatureMeasurementCluster.java index 5c0024146e..571ca83b9b 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTemperatureMeasurementCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTemperatureMeasurementCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclTemperatureMeasurementCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -79,10 +79,9 @@ public class ZclTemperatureMeasurementCluster extends ZclCluster { */ public static final int ATTR_TOLERANCE = 0x0003; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(4); + Map attributeMap = new ConcurrentHashMap<>(4); attributeMap.put(ATTR_MEASUREDVALUE, new ZclAttribute(ZclClusterType.TEMPERATURE_MEASUREMENT, ATTR_MEASUREDVALUE, "Measured Value", ZclDataType.SIGNED_16_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_MINMEASUREDVALUE, new ZclAttribute(ZclClusterType.TEMPERATURE_MEASUREMENT, ATTR_MINMEASUREDVALUE, "Min Measured Value", ZclDataType.SIGNED_16_BIT_INTEGER, true, true, false, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatCluster.java index 95c914581d..f62e7d9db4 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatCluster.java @@ -35,7 +35,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-15T23:41:21Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:57:36Z") public class ZclThermostatCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -111,10 +111,9 @@ public class ZclThermostatCluster extends ZclCluster { public static final int ATTR_ALARMMASK = 0x001D; public static final int ATTR_THERMOSTATRUNNINGMODE = 0x001E; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(25); + Map attributeMap = new ConcurrentHashMap<>(25); attributeMap.put(ATTR_LOCALTEMPERATURE, new ZclAttribute(ZclClusterType.THERMOSTAT, ATTR_LOCALTEMPERATURE, "Local Temperature", ZclDataType.SIGNED_16_BIT_INTEGER, true, true, false, true)); attributeMap.put(ATTR_OUTDOORTEMPERATURE, new ZclAttribute(ZclClusterType.THERMOSTAT, ATTR_OUTDOORTEMPERATURE, "Outdoor Temperature", ZclDataType.SIGNED_16_BIT_INTEGER, false, true, false, false)); @@ -145,6 +144,29 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeServerCommands() { + Map> commandMap = new ConcurrentHashMap<>(2); + + commandMap.put(0x0000, GetWeeklyScheduleResponse.class); + commandMap.put(0x0001, GetRelayStatusLogResponse.class); + + return commandMap; + } + + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(5); + + commandMap.put(0x0000, SetpointRaiseLowerCommand.class); + commandMap.put(0x0001, SetWeeklySchedule.class); + commandMap.put(0x0002, GetWeeklySchedule.class); + commandMap.put(0x0003, ClearWeeklySchedule.class); + commandMap.put(0x0004, GetRelayStatusLog.class); + + return commandMap; + } + /** * Default constructor to create a Thermostat cluster. * @@ -1391,34 +1413,4 @@ public Future getRelayStatusLogResponse(Integer timeOfDay, Intege return send(command); } - - @Override - public ZclCommand getCommandFromId(int commandId) { - switch (commandId) { - case 0x00: // SETPOINT_RAISE_LOWER_COMMAND - return new SetpointRaiseLowerCommand(); - case 0x01: // SET_WEEKLY_SCHEDULE - return new SetWeeklySchedule(); - case 0x02: // GET_WEEKLY_SCHEDULE - return new GetWeeklySchedule(); - case 0x03: // CLEAR_WEEKLY_SCHEDULE - return new ClearWeeklySchedule(); - case 0x04: // GET_RELAY_STATUS_LOG - return new GetRelayStatusLog(); - default: - return null; - } - } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - case 0x00: // GET_WEEKLY_SCHEDULE_RESPONSE - return new GetWeeklyScheduleResponse(); - case 0x01: // GET_RELAY_STATUS_LOG_RESPONSE - return new GetRelayStatusLogResponse(); - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatUserInterfaceConfigurationCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatUserInterfaceConfigurationCluster.java index eace1ad711..b531fbc0e6 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatUserInterfaceConfigurationCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclThermostatUserInterfaceConfigurationCluster.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:59:06Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclThermostatUserInterfaceConfigurationCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -64,10 +64,9 @@ public class ZclThermostatUserInterfaceConfigurationCluster extends ZclCluster { */ public static final int ATTR_SCHEDULEPROGRAMMINGVISIBILITY = 0x0002; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(3); + Map attributeMap = new ConcurrentHashMap<>(3); attributeMap.put(ATTR_TEMPERATUREDISPLAYMODE, new ZclAttribute(ZclClusterType.THERMOSTAT_USER_INTERFACE_CONFIGURATION, ATTR_TEMPERATUREDISPLAYMODE, "Temperature Display Mode", ZclDataType.ENUMERATION_8_BIT, false, true, true, true)); attributeMap.put(ATTR_KEYPADLOCKOUT, new ZclAttribute(ZclClusterType.THERMOSTAT_USER_INTERFACE_CONFIGURATION, ATTR_KEYPADLOCKOUT, "Keypad Lockout", ZclDataType.ENUMERATION_8_BIT, false, true, true, true)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTimeCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTimeCluster.java index 9e1fc69518..b048defa78 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTimeCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclTimeCluster.java @@ -31,7 +31,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclTimeCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -123,10 +123,9 @@ public class ZclTimeCluster extends ZclCluster { */ public static final int ATTR_VALIDUNTILTIME = 0x0009; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(10); + Map attributeMap = new ConcurrentHashMap<>(10); attributeMap.put(ATTR_TIME, new ZclAttribute(ZclClusterType.TIME, ATTR_TIME, "Time", ZclDataType.UTCTIME, true, true, true, false)); attributeMap.put(ATTR_TIMESTATUS, new ZclAttribute(ZclClusterType.TIME, ATTR_TIMESTATUS, "Time Status", ZclDataType.BITMAP_8_BIT, false, true, true, false)); diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclWindowCoveringCluster.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclWindowCoveringCluster.java index 28ba7ede68..cf3cda2a29 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclWindowCoveringCluster.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/clusters/ZclWindowCoveringCluster.java @@ -36,7 +36,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T17:03:43Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T21:33:25Z") public class ZclWindowCoveringCluster extends ZclCluster { /** * The ZigBee Cluster Library Cluster ID @@ -175,10 +175,9 @@ public class ZclWindowCoveringCluster extends ZclCluster { */ public static final int ATTR_INTERMEDIATESETPOINTSTILT = 0x0019; - // Attribute initialisation @Override protected Map initializeAttributes() { - Map attributeMap = new ConcurrentHashMap(20); + Map attributeMap = new ConcurrentHashMap<>(20); attributeMap.put(ATTR_WINDOWCOVERINGTYPE, new ZclAttribute(ZclClusterType.WINDOW_COVERING, ATTR_WINDOWCOVERINGTYPE, "Window Covering Type", ZclDataType.ENUMERATION_8_BIT, true, true, false, false)); attributeMap.put(ATTR_PHYSICALCLOSEDLIMITLIFT, new ZclAttribute(ZclClusterType.WINDOW_COVERING, ATTR_PHYSICALCLOSEDLIMITLIFT, "Physical Closed Limit - Lift", ZclDataType.UNSIGNED_16_BIT_INTEGER, true, true, false, false)); @@ -204,6 +203,21 @@ protected Map initializeAttributes() { return attributeMap; } + @Override + protected Map> initializeClientCommands() { + Map> commandMap = new ConcurrentHashMap<>(7); + + commandMap.put(0x0000, WindowCoveringUpOpen.class); + commandMap.put(0x0001, WindowCoveringDownClose.class); + commandMap.put(0x0002, WindowCoveringStop.class); + commandMap.put(0x0004, WindowCoveringGoToLiftValue.class); + commandMap.put(0x0005, WindowCoveringGoToLiftPercentage.class); + commandMap.put(0x0007, WindowCoveringGoToTiltValue.class); + commandMap.put(0x0008, WindowCoveringGoToTiltPercentage.class); + + return commandMap; + } + /** * Default constructor to create a Window Covering cluster. * @@ -1634,12 +1648,4 @@ public Future windowCoveringGoToTiltPercentage(Integer percentage return send(command); } - - @Override - public ZclCommand getResponseFromId(int commandId) { - switch (commandId) { - default: - return null; - } - } } diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/BindRequest.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/BindRequest.java index 431e46c97e..bd469fd513 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/BindRequest.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/BindRequest.java @@ -31,7 +31,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:28:39Z") public class BindRequest extends ZdoRequest implements ZigBeeTransactionMatcher { /** * Src Address command message field. @@ -253,7 +253,7 @@ public void deserialize(final ZclFieldDeserializer deserializer) { @Override public boolean isTransactionMatch(ZigBeeCommand request, ZigBeeCommand response) { return (response instanceof BindResponse) - & ((ZdoRequest) request).getDestinationAddress().equals(((BindResponse) response).getSourceAddress()); + && ((ZdoRequest) request).getDestinationAddress().equals(((BindResponse) response).getSourceAddress()); } @Override diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementBindRequest.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementBindRequest.java index ad95ec6e5f..b5613391e6 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementBindRequest.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementBindRequest.java @@ -28,7 +28,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:28:39Z") public class ManagementBindRequest extends ZdoRequest implements ZigBeeTransactionMatcher { /** * Start Index command message field. @@ -77,7 +77,7 @@ public void deserialize(final ZclFieldDeserializer deserializer) { @Override public boolean isTransactionMatch(ZigBeeCommand request, ZigBeeCommand response) { return (response instanceof ManagementBindResponse) - & ((ZdoRequest) request).getDestinationAddress().equals(((ManagementBindResponse) response).getSourceAddress()); + && ((ZdoRequest) request).getDestinationAddress().equals(((ManagementBindResponse) response).getSourceAddress()); } @Override diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementPermitJoiningRequest.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementPermitJoiningRequest.java index c3d5a73f19..e6c9db7358 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementPermitJoiningRequest.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/ManagementPermitJoiningRequest.java @@ -32,7 +32,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:28:39Z") public class ManagementPermitJoiningRequest extends ZdoRequest implements ZigBeeTransactionMatcher { /** * Permit Duration command message field. @@ -106,7 +106,7 @@ public void deserialize(final ZclFieldDeserializer deserializer) { @Override public boolean isTransactionMatch(ZigBeeCommand request, ZigBeeCommand response) { return (response instanceof ManagementPermitJoiningResponse) - & ((ZdoRequest) request).getDestinationAddress().equals(((ManagementPermitJoiningResponse) response).getSourceAddress()); + && ((ZdoRequest) request).getDestinationAddress().equals(((ManagementPermitJoiningResponse) response).getSourceAddress()); } @Override diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/UnbindRequest.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/UnbindRequest.java index 74540e6890..927b3894bd 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/UnbindRequest.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zdo/command/UnbindRequest.java @@ -29,7 +29,7 @@ *

* Code is auto-generated. Modifications may be overwritten! */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T15:23:12Z") +@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-26T20:28:39Z") public class UnbindRequest extends ZdoRequest implements ZigBeeTransactionMatcher { /** * Src Address command message field. @@ -251,7 +251,7 @@ public void deserialize(final ZclFieldDeserializer deserializer) { @Override public boolean isTransactionMatch(ZigBeeCommand request, ZigBeeCommand response) { return (response instanceof UnbindResponse) - & ((ZdoRequest) request).getDestinationAddress().equals(((UnbindResponse) response).getSourceAddress()); + && ((ZdoRequest) request).getDestinationAddress().equals(((UnbindResponse) response).getSourceAddress()); } @Override