X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fyang-model-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fyang%2Fparser%2Fbuilder%2Fimpl%2FIdentitySchemaNodeBuilder.java;h=2e7c495d9eeebf08bb285f9c4f7493eca580b0c1;hb=bcb16d1f4b1b1f2ac28553edb0aafc5ca770eff1;hp=9cce264e60b131679b3ce52460ec8cda373a3a4c;hpb=b36cea2d468e8f572f0159332b0668fc35c95912;p=controller.git diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java index 9cce264e60..2e7c495d9e 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java @@ -17,6 +17,7 @@ import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.parser.builder.api.AbstractSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.util.Comparators; public final class IdentitySchemaNodeBuilder extends AbstractSchemaNodeBuilder { private boolean isBuilt; @@ -25,15 +26,15 @@ public final class IdentitySchemaNodeBuilder extends AbstractSchemaNodeBuilder { private IdentitySchemaNode baseIdentity; private String baseIdentityName; - IdentitySchemaNodeBuilder(final QName qname, final int line) { - super(qname, line); + IdentitySchemaNodeBuilder(final String moduleName, final int line, final QName qname) { + super(moduleName, line, qname); instance = new IdentitySchemaNodeImpl(qname); } @Override public IdentitySchemaNode build() { if (!isBuilt) { - instance.setPath(path); + instance.setPath(schemaPath); instance.setDescription(description); instance.setReference(reference); instance.setStatus(status); @@ -47,9 +48,12 @@ public final class IdentitySchemaNodeBuilder extends AbstractSchemaNodeBuilder { } // UNKNOWN NODES - final List unknownNodes = new ArrayList(); - for (UnknownSchemaNodeBuilder b : addedUnknownNodes) { - unknownNodes.add(b.build()); + if (unknownNodes == null) { + unknownNodes = new ArrayList(); + for (UnknownSchemaNodeBuilder b : addedUnknownNodes) { + unknownNodes.add(b.build()); + } + Collections.sort(unknownNodes, Comparators.SCHEMA_NODE_COMP); } instance.setUnknownSchemaNodes(unknownNodes); @@ -75,6 +79,11 @@ public final class IdentitySchemaNodeBuilder extends AbstractSchemaNodeBuilder { this.baseIdentity = baseType; } + @Override + public String toString() { + return "identity " + qname.getLocalName(); + } + private final class IdentitySchemaNodeImpl implements IdentitySchemaNode { private final QName qname; private IdentitySchemaNode baseIdentity;