X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fbinding-generator-util%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fbinding%2Fgenerator%2Futil%2Fgenerated%2Ftype%2Fbuilder%2FGeneratedTOBuilderImpl.java;h=558fb438504eda14a3c64b1b793f71f3f0a28e60;hb=9c8108faabf300747a2a5529dc7a8ef76e79c2bc;hp=e2cb0aa38133f43bca3adde8d539c7e6a9353d92;hpb=1956ffcf4e2a98930223c6c47ab7df12a77a256c;p=controller.git diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java index e2cb0aa381..558fb43850 100644 --- a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java @@ -30,7 +30,9 @@ public final class GeneratedTOBuilderImpl implements GeneratedTOBuilder { private String packageName; private final String name; private String comment = ""; - + + private GeneratedTransferObject extendsType; + private final List implementsTypes = new ArrayList(); private final List enumerations = new ArrayList(); private final List properties = new ArrayList(); private final List equalsProperties = new ArrayList(); @@ -79,10 +81,28 @@ public final class GeneratedTOBuilderImpl implements GeneratedTOBuilder { } return null; } + + @Override + public boolean addImplementsType(final Type genType) { + if (genType != null) { + return implementsTypes.add(genType); + } + return false; + } + @Override + public boolean addExtendsType(final GeneratedTransferObject genTransObj) { + if (genTransObj != null) { + extendsType = genTransObj; + return true; + } + return false; + } + @Override public EnumBuilder addEnumeration(String name) { - final EnumBuilder builder = new EnumerationBuilderImpl(packageName, + final String innerPackageName = packageName + "." + this.name; + final EnumBuilder builder = new EnumerationBuilderImpl(innerPackageName, name); enumerations.add(builder); return builder; @@ -130,7 +150,7 @@ public final class GeneratedTOBuilderImpl implements GeneratedTOBuilder { @Override public GeneratedTransferObject toInstance() { return new GeneratedTransferObjectImpl(packageName, name, comment, - annotationBuilders, constantDefintions, enumerations, + annotationBuilders, extendsType, implementsTypes, constantDefintions, enumerations, methodDefinitions, properties, equalsProperties, hashProperties, toStringProperties); } @@ -388,11 +408,15 @@ public final class GeneratedTOBuilderImpl implements GeneratedTOBuilder { private final List stringProperties; private final List annotations; private final List methods; + private final GeneratedTransferObject extendsType; + private final List implementsTypes; public GeneratedTransferObjectImpl(final String packageName, final String name, final String comment, final List annotationBuilders, + final GeneratedTransferObject extendsType, + final List implementsTypes, final List constantBuilders, final List enumBuilders, final List methodBuilders, @@ -405,6 +429,8 @@ public final class GeneratedTOBuilderImpl implements GeneratedTOBuilder { this.name = name; this.comment = comment; this.annotations = toUnmodifiableAnnotations(annotationBuilders); + this.extendsType = extendsType; + this.implementsTypes = Collections.unmodifiableList(implementsTypes); this.constants = toUnmodifiableConstant(constantBuilders); this.enumerations = toUnmodifiableEnumerations(enumBuilders); this.properties = toUnmodifiableProperties(propBuilers); @@ -483,7 +509,17 @@ public final class GeneratedTOBuilderImpl implements GeneratedTOBuilder { public List getAnnotations() { return annotations; } + + @Override + public List getImplements() { + return implementsTypes; + } + @Override + public GeneratedTransferObject getExtends() { + return extendsType; + } + @Override public List getEnumDefintions() { return enumerations;