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%2FNotificationBuilder.java;h=14b701fe9eb9dd412a76665bdad0d471e45df1db;hb=88187167a1b7928602fd8d72cb7d4dc2b38dfa70;hp=534ba2c841e5171c579cd3446fdd8625404cf2a8;hpb=a1124bebabbd033f4f19f991ce8e3b0b45e18d29;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/NotificationBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/NotificationBuilder.java index 534ba2c841..14b701fe9e 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/NotificationBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/NotificationBuilder.java @@ -9,11 +9,12 @@ package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; -import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.TreeMap; +import java.util.TreeSet; import org.opendaylight.controller.yang.common.QName; import org.opendaylight.controller.yang.model.api.AugmentationSchema; @@ -31,15 +32,14 @@ import org.opendaylight.controller.yang.parser.builder.api.AugmentationTargetBui import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionAwareBuilder; import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.util.Comparators; -public final class NotificationBuilder extends AbstractDataNodeContainerBuilder implements TypeDefinitionAwareBuilder, - SchemaNodeBuilder, AugmentationTargetBuilder { +public final class NotificationBuilder extends AbstractDataNodeContainerBuilder implements SchemaNodeBuilder, + AugmentationTargetBuilder { private boolean isBuilt; private final NotificationDefinitionImpl instance; - private final int line; private SchemaPath schemaPath; private String description; private String reference; @@ -48,11 +48,9 @@ public final class NotificationBuilder extends AbstractDataNodeContainerBuilder private final Set addedUsesNodes = new HashSet(); private Set augmentations; private final Set addedAugmentations = new HashSet(); - private final List addedUnknownNodes = new ArrayList(); - NotificationBuilder(final QName qname, final int line) { - super(qname); - this.line = line; + NotificationBuilder(final int line, final QName qname) { + super(line, qname); instance = new NotificationDefinitionImpl(qname); } @@ -65,21 +63,21 @@ public final class NotificationBuilder extends AbstractDataNodeContainerBuilder instance.setStatus(status); // CHILD NODES - final Map childs = new HashMap(); + final Map childs = new TreeMap(Comparators.QNAME_COMP); for (DataSchemaNodeBuilder node : addedChildNodes) { childs.put(node.getQName(), node.build()); } instance.setChildNodes(childs); // GROUPINGS - final Set groupingDefs = new HashSet(); + final Set groupingDefs = new TreeSet(Comparators.SCHEMA_NODE_COMP); for (GroupingBuilder builder : addedGroupings) { groupingDefs.add(builder.build()); } instance.setGroupings(groupingDefs); // TYPEDEFS - final Set> typedefs = new HashSet>(); + final Set> typedefs = new TreeSet>(Comparators.SCHEMA_NODE_COMP); for (TypeDefinitionBuilder entry : addedTypedefs) { typedefs.add(entry.build()); } @@ -106,6 +104,7 @@ public final class NotificationBuilder extends AbstractDataNodeContainerBuilder for (UnknownSchemaNodeBuilder b : addedUnknownNodes) { unknownNodes.add(b.build()); } + Collections.sort(unknownNodes, Comparators.SCHEMA_NODE_COMP); instance.setUnknownSchemaNodes(unknownNodes); isBuilt = true; @@ -120,11 +119,6 @@ public final class NotificationBuilder extends AbstractDataNodeContainerBuilder build(); } - @Override - public int getLine() { - return line; - } - @Override public Set getTypeDefinitionBuilders() { return addedTypedefs; @@ -195,11 +189,6 @@ public final class NotificationBuilder extends AbstractDataNodeContainerBuilder this.augmentations = augmentations; } - @Override - public void addUnknownSchemaNode(final UnknownSchemaNodeBuilder unknownNode) { - addedUnknownNodes.add(unknownNode); - } - @Override public String toString() { return "notification " + getQName().getLocalName();