From a47ff1ba6d02785128d203380fac79c71e7b5921 Mon Sep 17 00:00:00 2001 From: Chris Jackson Date: Sun, 10 Mar 2019 19:02:25 +0000 Subject: [PATCH] Remove ZclDataType from auto code generation Signed-off-by: Chris Jackson --- .../zigbee/autocode/ZigBeeCodeGenerator.java | 3 - .../autocode/ZigBeeZclDataTypeGenerator.java | 164 ------------------ .../zigbee/zcl/protocol/ZclDataType.java | 7 +- 3 files changed, 2 insertions(+), 172 deletions(-) delete mode 100644 com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclDataTypeGenerator.java diff --git a/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeCodeGenerator.java b/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeCodeGenerator.java index 360cc820b..6201d98a9 100644 --- a/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeCodeGenerator.java +++ b/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeCodeGenerator.java @@ -18,7 +18,6 @@ import java.util.Date; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.TimeZone; import com.zsmartsystems.zigbee.autocode.xml.ZigBeeXmlCluster; @@ -112,14 +111,12 @@ public static void main(final String[] args) { allClusters.addAll(zdoClusters); ZigBeeZclDependencyGenerator typeGenerator = new ZigBeeZclDependencyGenerator(allClusters); Map zclTypes = typeGenerator.getDependencyMap(); - Set dataTypes = typeGenerator.getZclTypeMap(); new ZigBeeZclClusterGenerator(zclClusters, generatedDate, zclTypes); new ZigBeeZclCommandGenerator(zclClusters, generatedDate, zclTypes); new ZigBeeZclConstantGenerator(zclClusters, generatedDate, zclTypes); new ZigBeeZclStructureGenerator(zclClusters, generatedDate, zclTypes); new ZigBeeZclClusterTypeGenerator(zclClusters, generatedDate, zclTypes); - new ZigBeeZclDataTypeGenerator(dataTypes, generatedDate); new ZigBeeZclCommandGenerator(zdoClusters, generatedDate, zclTypes); diff --git a/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclDataTypeGenerator.java b/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclDataTypeGenerator.java deleted file mode 100644 index 46f641c9a..000000000 --- a/com.zsmartsystems.zigbee.autocode/src/main/java/com/zsmartsystems/zigbee/autocode/ZigBeeZclDataTypeGenerator.java +++ /dev/null @@ -1,164 +0,0 @@ -/** - * Copyright (c) 2016-2019 by the respective copyright holders. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - */ -package com.zsmartsystems.zigbee.autocode; - -import java.io.File; -import java.io.IOException; -import java.io.PrintWriter; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; -import java.util.Set; - -import com.zsmartsystems.zigbee.autocode.ZclDataType.DataTypeMap; - -/** - * - * @author Chris Jackson - * - */ -public class ZigBeeZclDataTypeGenerator extends ZigBeeBaseClassGenerator { - ZigBeeZclDataTypeGenerator(Set types, String generatedDate) { - try { - this.generatedDate = generatedDate; - generateZclDataTypeEnumeration(types); - } catch (IOException e) { - e.printStackTrace(); - } - } - - private void generateZclDataTypeEnumeration(Set dataTypes) throws IOException { - final String className = "ZclDataType"; - - dataTypes.add("EXTENDED_PANID"); - dataTypes.add("UNSIGNED_8_BIT_INTEGER_ARRAY"); - dataTypes.add("ZIGBEE_DATA_TYPE"); - - List sortedTypes = new LinkedList<>(); - sortedTypes.addAll(dataTypes); - Collections.sort(sortedTypes); - - final String packagePath = getPackagePath(new File(sourceRootPath), packageRoot + packageZclProtocol); - final File packageFile = getPackageFile(packagePath); - - final PrintWriter out = getClassOut(packageFile, className); - outputLicense(out); - - importsClear(); - out.println("package " + packageRoot + packageZclProtocol + ";"); - out.println(); - - importsAdd("javax.annotation.Generated"); - importsAdd("java.util.Calendar"); - importsAdd("java.util.HashMap"); - importsAdd("java.util.Map"); - importsAdd("com.zsmartsystems.zigbee.ExtendedPanId"); - importsAdd("com.zsmartsystems.zigbee.IeeeAddress"); - importsAdd("com.zsmartsystems.zigbee.zcl.ZclStatus"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.ByteArray"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.ExtensionFieldSet"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.AttributeInformation"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.AttributeRecord"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.AttributeReport"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.NeighborInformation"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.AttributeReportingConfigurationRecord"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.AttributeStatusRecord"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.ExtendedAttributeInformation"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.ReadAttributeStatusRecord"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.WriteAttributeRecord"); - importsAdd("com.zsmartsystems.zigbee.zcl.field.WriteAttributeStatusRecord"); - importsAdd("com.zsmartsystems.zigbee.zdo.ZdoStatus"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.BindingTable"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.ComplexDescriptor"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.NeighborTable"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.NodeDescriptor"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.PowerDescriptor"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.RoutingTable"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.SimpleDescriptor"); - importsAdd("com.zsmartsystems.zigbee.zdo.field.UserDescriptor"); - - outputImports(out); - - out.println(); - out.println("/**"); - out.println(" * Enumeration of the ZCL data types."); - out.println(" *

"); - out.println(" * Code is auto-generated. Modifications may be overwritten!"); - out.println(" */"); - outputClassGenerated(out); - - out.println("public enum " + className + " {"); - - boolean first = true; - for (final String dataTypeString : sortedTypes) { - DataTypeMap zclDataType = ZclDataType.getDataTypeMapping().get(dataTypeString); - if (zclDataType == null) { - System.out.println("Unable to map data type \"" + dataTypeString + "\""); - continue; - } - - if (!first) { - out.println(','); - } - first = false; - - final String dataTypeClass; - if (zclDataType.dataClass.contains("<")) { - dataTypeClass = zclDataType.dataClass.substring(zclDataType.dataClass.indexOf("<") + 1, - zclDataType.dataClass.indexOf(">")); - } else { - dataTypeClass = zclDataType.dataClass; - } - out.print(" " + dataTypeString + "(" + dataTypeClass + ".class" + ", " - + String.format("0x%02X", zclDataType.id) + ", " + zclDataType.analogue + ")"); - } - out.println(';'); - - out.println(); - out.println(" private final Class dataClass;"); - out.println(" private final int typeId;"); - out.println(" private final boolean analogue;"); - out.println(" private static Map codeTypeMapping;"); - out.println(); - - out.println(" static {"); - out.println(" codeTypeMapping = new HashMap();"); - out.println(" for (" + className + " value : values()) {"); - out.println(" codeTypeMapping.put(value.typeId, value);"); - out.println(" }"); - out.println(" }"); - out.println(); - out.println(" " + className + "(final Class dataClass, final int typeId, final boolean analogue) {"); - out.println(" this.dataClass = dataClass;"); - out.println(" this.typeId = typeId;"); - out.println(" this.analogue = analogue;"); - out.println(" }"); - out.println(); - - out.println(" public static " + className + " getType(int typeId) {"); - out.println(" return codeTypeMapping.get(typeId);"); - out.println(" }"); - - out.println(); - out.println(" public Class getDataClass() {"); - out.println(" return dataClass;"); - out.println(" }"); - out.println(); - out.println(" public int getId() {"); - out.println(" return typeId;"); - out.println(" }"); - out.println(); - out.println(" public boolean isAnalog() {"); - out.println(" return analogue;"); - out.println(" }"); - out.println("}"); - - out.flush(); - out.close(); - } -} diff --git a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/protocol/ZclDataType.java b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/protocol/ZclDataType.java index 6e4f80d38..1e0383996 100644 --- a/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/protocol/ZclDataType.java +++ b/com.zsmartsystems.zigbee/src/main/java/com/zsmartsystems/zigbee/zcl/protocol/ZclDataType.java @@ -11,8 +11,6 @@ import java.util.HashMap; import java.util.Map; -import javax.annotation.Generated; - import com.zsmartsystems.zigbee.ExtendedPanId; import com.zsmartsystems.zigbee.IeeeAddress; import com.zsmartsystems.zigbee.zcl.ZclStatus; @@ -40,10 +38,9 @@ /** * Enumeration of the ZCL data types. - *

- * Code is auto-generated. Modifications may be overwritten! + * + * @author Chris Jackson */ -@Generated(value = "com.zsmartsystems.zigbee.autocode.ZigBeeCodeGenerator", date = "2019-02-09T19:41:47Z") public enum ZclDataType { BINDING_TABLE(BindingTable.class, 0x00, false), BITMAP_16_BIT(Integer.class, 0x19, false),