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%2FAugmentationSchemaBuilderImpl.java;h=7fcee2ef52aff579ce707673d31c8c34171482bc;hb=refs%2Fchanges%2F79%2F579%2F2;hp=d3082e882407714b631f8f3edbd1e110d2afe154;hpb=23444a6bd86cb70d5dc0c1ef8905ee96d6011b27;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/AugmentationSchemaBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AugmentationSchemaBuilderImpl.java index d3082e8824..7fcee2ef52 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AugmentationSchemaBuilderImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AugmentationSchemaBuilderImpl.java @@ -27,8 +27,8 @@ import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.UsesNode; import org.opendaylight.controller.yang.model.util.RevisionAwareXPathImpl; +import org.opendaylight.controller.yang.parser.builder.api.AbstractDataNodeContainerBuilder; import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.parser.builder.api.Builder; 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.TypeDefinitionBuilder; @@ -37,11 +37,10 @@ import org.opendaylight.controller.yang.parser.util.Comparators; import org.opendaylight.controller.yang.parser.util.ParserListenerUtils; import org.opendaylight.controller.yang.parser.util.YangParseException; -public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBuilder { +public final class AugmentationSchemaBuilderImpl extends AbstractDataNodeContainerBuilder implements + AugmentationSchemaBuilder { private boolean built; private final AugmentationSchemaImpl instance; - private final int line; - private Builder parent; private String whenCondition; private String description; @@ -52,60 +51,18 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu private SchemaPath dirtyAugmentTarget; private SchemaPath finalAugmentTarget; - private final Set childNodes = new HashSet(); - private final Set groupings = new HashSet(); private final Set usesNodes = new HashSet(); private final List addedUnknownNodes = new ArrayList(); private boolean resolved; AugmentationSchemaBuilderImpl(final int line, final String augmentTargetStr) { + super(line, null); this.augmentTargetStr = augmentTargetStr; - this.line = line; final SchemaPath targetPath = ParserListenerUtils.parseAugmentPath(augmentTargetStr); dirtyAugmentTarget = targetPath; instance = new AugmentationSchemaImpl(targetPath); } - @Override - public int getLine() { - return line; - } - - @Override - public Builder getParent() { - return parent; - } - - @Override - public void setParent(final Builder parent) { - this.parent = parent; - } - - @Override - public void addChildNode(DataSchemaNodeBuilder childNode) { - childNodes.add(childNode); - } - - @Override - public Set getChildNodes() { - return Collections.emptySet(); - } - - @Override - public DataSchemaNodeBuilder getDataChildByName(final String name) { - for(DataSchemaNodeBuilder child : childNodes) { - if(child.getQName().getLocalName().equals(name)) { - return child; - } - } - return null; - } - - @Override - public Set getChildNodeBuilders() { - return childNodes; - } - @Override public Set getGroupings() { return Collections.emptySet(); @@ -113,12 +70,12 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu @Override public Set getGroupingBuilders() { - return groupings; + return Collections.emptySet(); } @Override public void addGrouping(GroupingBuilder grouping) { - groupings.add(grouping); + throw new YangParseException(line, "augment can not contains grouping statement"); } @Override @@ -126,14 +83,6 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu usesNodes.add(usesBuilder); } - /** - * Always returns null. - */ - @Override - public QName getQName() { - return null; - } - /** * Always returns null. */ @@ -160,19 +109,11 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu // CHILD NODES final Map childs = new TreeMap(Comparators.QNAME_COMP); - for (DataSchemaNodeBuilder node : childNodes) { + for (DataSchemaNodeBuilder node : addedChildNodes) { childs.put(node.getQName(), node.build()); } instance.setChildNodes(childs); - // GROUPINGS - final Set groupingDefinitions = new TreeSet( - Comparators.SCHEMA_NODE_COMP); - for (GroupingBuilder builder : groupings) { - groupingDefinitions.add(builder.build()); - } - instance.setGroupings(groupingDefinitions); - // USES final Set usesNodeDefinitions = new HashSet(); for (UsesNodeBuilder builder : usesNodes) { @@ -316,7 +257,6 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu private SchemaPath targetPath; private RevisionAwareXPath whenCondition; private Map childNodes = Collections.emptyMap(); - private Set groupings = Collections.emptySet(); private Set uses = Collections.emptySet(); private String description; private String reference; @@ -358,15 +298,13 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu } } + /** + * Always returns an empty set, because augment can not contains + * grouping statement. + */ @Override public Set getGroupings() { - return groupings; - } - - private void setGroupings(Set groupings) { - if (groupings != null) { - this.groupings = groupings; - } + return Collections.emptySet(); } @Override @@ -381,8 +319,8 @@ public final class AugmentationSchemaBuilderImpl implements AugmentationSchemaBu } /** - * Always returns an empty set, because augmentation can not contains - * type definitions. + * Always returns an empty set, because augment can not contains type + * definitions. */ @Override public Set> getTypeDefinitions() {