*/\r
package org.opendaylight.controller.sal.java.api.generator;\r
\r
-import static org.opendaylight.controller.sal.java.api.generator.Constants.*;\r
+import static org.opendaylight.controller.sal.java.api.generator.Constants.NL;\r
+import static org.opendaylight.controller.sal.java.api.generator.Constants.RCB;\r
+import static org.opendaylight.controller.sal.java.api.generator.Constants.TAB;\r
\r
import java.io.IOException;\r
import java.io.StringWriter;\r
import java.util.List;\r
\r
import org.opendaylight.controller.sal.binding.model.api.CodeGenerator;\r
-import org.opendaylight.controller.sal.binding.model.api.Constant;\r
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;\r
+import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;\r
+import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;\r
+import org.opendaylight.controller.sal.binding.model.api.Type;\r
\r
public class CompositeKeyGenerator implements CodeGenerator {\r
\r
@Override\r
- public Writer generate(GeneratedType type) throws IOException {\r
+ public Writer generate(Type type) throws IOException {\r
final Writer writer = new StringWriter();\r
- final List<Constant> fields = type.getConstantDefinitions();\r
+ if (type instanceof GeneratedTransferObject) {\r
+ GeneratedTransferObject genTO = (GeneratedTransferObject)type;\r
+ final List<GeneratedProperty> fields = genTO.getProperties();\r
\r
- writer.write(GeneratorUtil.createClassDeclarationWithPkgName(\r
- type.getPackageName(), type.getName(), ""));\r
- writer.write(NL);\r
- writer.write(NL);\r
-\r
- if (fields != null) {\r
- for (Constant field : fields) {\r
- writer.write(GeneratorUtil.createField(field, TAB) + NL);\r
- }\r
+ writer.write(GeneratorUtil.createClassDeclarationWithPkgName(\r
+ type.getPackageName(), type.getName(), ""));\r
writer.write(NL);\r
-\r
- for (Constant field : fields) {\r
- writer.write(GeneratorUtil.createGetter(field, TAB) + NL);\r
- }\r
writer.write(NL);\r
-\r
- writer.write(GeneratorUtil.createHashCode(fields, TAB) + NL);\r
- writer.write(GeneratorUtil.createEquals(type, fields, TAB) + NL);\r
- writer.write(GeneratorUtil.createToString(type, fields, TAB) + NL);\r
-\r
- writer.write(RCB);\r
+ \r
+ if (fields != null) {\r
+ for (GeneratedProperty field : fields) {\r
+ writer.write(GeneratorUtil.createField(field, TAB) + NL);\r
+ }\r
+ writer.write(NL);\r
+ writer.write(GeneratorUtil.createConstructor(genTO, TAB) + NL);\r
+ writer.write(NL);\r
+ for (GeneratedProperty field : fields) {\r
+ writer.write(GeneratorUtil.createGetter(field, TAB) + NL);\r
+ }\r
+ writer.write(NL);\r
+\r
+ writer.write(GeneratorUtil.createHashCode(genTO.getHashCodeIdentifiers(), TAB) + NL);\r
+ writer.write(GeneratorUtil.createEquals(genTO, genTO.getEqualsIdentifiers(), TAB) + NL);\r
+ writer.write(GeneratorUtil.createToString(genTO, genTO.getToStringIdentifiers(), TAB) + NL);\r
+\r
+ writer.write(RCB);\r
+ }\r
}\r
-\r
return writer;\r
}\r
\r