Merge "Introduce RESTCONF Client API"
[yangtools.git] / yang / yang-parser-impl / src / main / java / org / opendaylight / yangtools / yang / parser / builder / impl / IdentityrefTypeBuilder.java
index 0030b91d0b8590f3499eb32102afe47f5ca149c4..e61097366cb3edab4d1ff2fbaaced7a068c4b4ae 100644 (file)
@@ -11,13 +11,8 @@ import java.util.Collections;
 import java.util.List;
 
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-import org.opendaylight.yangtools.yang.model.api.Status;
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
-import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
-import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
+import org.opendaylight.yangtools.yang.model.api.*;
+import org.opendaylight.yangtools.yang.model.api.type.*;
 import org.opendaylight.yangtools.yang.model.util.BaseTypes;
 import org.opendaylight.yangtools.yang.model.util.IdentityrefType;
 import org.opendaylight.yangtools.yang.parser.builder.api.AbstractTypeAwareBuilder;
@@ -32,7 +27,7 @@ public final class IdentityrefTypeBuilder extends AbstractTypeAwareBuilder imple
 
     private final String baseString;
     private final SchemaPath schemaPath;
-    private QName baseQName;
+    private IdentitySchemaNodeBuilder baseIdentity;
 
     public IdentityrefTypeBuilder(final String moduleName, final int line, final String baseString,
             final SchemaPath schemaPath) {
@@ -41,17 +36,22 @@ public final class IdentityrefTypeBuilder extends AbstractTypeAwareBuilder imple
         this.schemaPath = schemaPath;
     }
 
+    @Override
+    public void setQName(QName qname) {
+        this.qname = qname;
+    }
+
     @Override
     public IdentityrefType build() {
-        return new IdentityrefType(baseQName, schemaPath);
+        return new IdentityrefType(baseIdentity.build(), schemaPath);
     }
 
     public String getBaseString() {
         return baseString;
     }
 
-    public void setBaseQName(QName baseQName) {
-        this.baseQName = baseQName;
+    public void setBaseIdentity(IdentitySchemaNodeBuilder baseIdentity) {
+        this.baseIdentity = baseIdentity;
     }
 
     @Override
@@ -74,11 +74,6 @@ public final class IdentityrefTypeBuilder extends AbstractTypeAwareBuilder imple
         throw new YangParseException(moduleName, line, "Can not set type to " + NAME);
     }
 
-    @Override
-    public void setPath(final SchemaPath schemaPath) {
-        throw new YangParseException(moduleName, line, "Can not set path to " + NAME);
-    }
-
     @Override
     public void setDescription(final String description) {
         throw new YangParseException(moduleName, line, "Can not set description to " + NAME);
@@ -104,11 +99,6 @@ public final class IdentityrefTypeBuilder extends AbstractTypeAwareBuilder imple
         throw new YangParseException(moduleName, line, "Identityref type can not be added by uses.");
     }
 
-    @Override
-    public List<UnknownSchemaNode> getUnknownNodes() {
-        return Collections.emptyList();
-    }
-
     @Override
     public void addUnknownNodeBuilder(final UnknownSchemaNodeBuilder unknownNode) {
         throw new YangParseException(moduleName, line, "Can not add unknown node to " + NAME);
@@ -180,7 +170,7 @@ public final class IdentityrefTypeBuilder extends AbstractTypeAwareBuilder imple
     }
 
     @Override
-    public List<UnknownSchemaNodeBuilder> getUnknownNodeBuilders() {
+    public List<UnknownSchemaNodeBuilder> getUnknownNodes() {
         return Collections.emptyList();
     }
 
@@ -206,8 +196,10 @@ public final class IdentityrefTypeBuilder extends AbstractTypeAwareBuilder imple
 
     @Override
     public String toString() {
-        final StringBuilder result = new StringBuilder(IdentityrefTypeBuilder.class.getSimpleName() + "[");
-        result.append(", base=" + baseQName);
+        final StringBuilder result = new StringBuilder(IdentityrefTypeBuilder.class.getSimpleName());
+        result.append("[");
+        result.append(", base=");
+        result.append(baseIdentity);
         result.append("]");
         return result.toString();
     }