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%2Fmodel%2Fparser%2Fbuilder%2Fimpl%2FFeatureBuilder.java;h=b8617003505dc68a9a5283091d3a87c88b35e5ac;hb=0082b632a043ef891f906b367e38132484685bb3;hp=23c74fd0bc57aca621b1b12cf24b5fab069b8abb;hpb=0fa3b1c50cf625fc37dd57350d3fa7db1b1b8eac;p=controller.git diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java index 23c74fd0bc..b861700350 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java @@ -7,6 +7,7 @@ */ package org.opendaylight.controller.yang.model.parser.builder.impl; +import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -21,6 +22,7 @@ public class FeatureBuilder implements SchemaNodeBuilder { private final FeatureDefinitionImpl instance; private final QName qname; + private final List addedUnknownNodes = new ArrayList(); FeatureBuilder(QName qname) { this.qname = qname; @@ -29,6 +31,13 @@ public class FeatureBuilder implements SchemaNodeBuilder { @Override public FeatureDefinitionImpl build() { + // UNKNOWN NODES + final List unknownNodes = new ArrayList(); + for(UnknownSchemaNodeBuilder b : addedUnknownNodes) { + unknownNodes.add(b.build()); + } + instance.setUnknownSchemaNodes(unknownNodes); + return instance; } @@ -57,6 +66,11 @@ public class FeatureBuilder implements SchemaNodeBuilder { instance.setStatus(status); } + @Override + public void addUnknownSchemaNode(UnknownSchemaNodeBuilder unknownSchemaNodeBuilder) { + addedUnknownNodes.add(unknownSchemaNodeBuilder); + } + private static class FeatureDefinitionImpl implements FeatureDefinition { private final QName qname; private SchemaPath path; @@ -117,18 +131,18 @@ public class FeatureBuilder implements SchemaNodeBuilder { return unknownSchemaNodes; } + private void setUnknownSchemaNodes(List unknownSchemaNodes) { + if(unknownSchemaNodes != null) { + this.unknownSchemaNodes = unknownSchemaNodes; + } + } + @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((qname == null) ? 0 : qname.hashCode()); result = prime * result + ((path == null) ? 0 : path.hashCode()); - result = prime * result - + ((description == null) ? 0 : description.hashCode()); - result = prime * result - + ((reference == null) ? 0 : reference.hashCode()); - result = prime * result - + ((status == null) ? 0 : status.hashCode()); return result; } @@ -158,27 +172,6 @@ public class FeatureBuilder implements SchemaNodeBuilder { } else if (!path.equals(other.path)) { return false; } - if (description == null) { - if (other.description != null) { - return false; - } - } else if (!description.equals(other.description)) { - return false; - } - if (reference == null) { - if (other.reference != null) { - return false; - } - } else if (!reference.equals(other.reference)) { - return false; - } - if (status == null) { - if (other.status != null) { - return false; - } - } else if (!status.equals(other.status)) { - return false; - } return true; } @@ -187,10 +180,7 @@ public class FeatureBuilder implements SchemaNodeBuilder { StringBuilder sb = new StringBuilder( FeatureDefinitionImpl.class.getSimpleName()); sb.append("[name=" + qname); - sb.append(", path=" + path); - sb.append(", description=" + description); - sb.append(", reference=" + reference); - sb.append(", status=" + status + "]"); + sb.append(", path=" + path + "]"); return sb.toString(); } }