*/
package org.opendaylight.yangtools.yang.parser.builder.impl;
+import com.google.common.base.Preconditions;
import java.util.Collections;
import java.util.List;
-
import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.*;
-import org.opendaylight.yangtools.yang.model.api.type.*;
+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.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.util.BaseTypes;
import org.opendaylight.yangtools.yang.model.util.IdentityrefType;
-import org.opendaylight.yangtools.yang.parser.builder.api.AbstractTypeAwareBuilder;
import org.opendaylight.yangtools.yang.parser.builder.api.TypeDefinitionBuilder;
+import org.opendaylight.yangtools.yang.parser.builder.api.UnknownSchemaNodeBuilder;
+import org.opendaylight.yangtools.yang.parser.builder.util.AbstractTypeAwareBuilder;
import org.opendaylight.yangtools.yang.parser.util.YangParseException;
/**
final SchemaPath schemaPath) {
super(moduleName, line, BaseTypes.constructQName(NAME));
this.baseString = baseString;
- this.schemaPath = schemaPath;
+ this.schemaPath = Preconditions.checkNotNull(schemaPath, "Schema Path must not be null");
+
}
@Override
- public void setQName(QName qname) {
+ public void setQName(final QName qname) {
this.qname = qname;
}
@Override
public IdentityrefType build() {
- return new IdentityrefType(baseIdentity.build(), schemaPath);
+ return IdentityrefType.create(schemaPath, baseIdentity.build());
}
public String getBaseString() {
return baseString;
}
- public void setBaseIdentity(IdentitySchemaNodeBuilder baseIdentity) {
+ public void setBaseIdentity(final IdentitySchemaNodeBuilder baseIdentity) {
this.baseIdentity = baseIdentity;
}
@Override
public void setType(final TypeDefinition<?> type) {
- throw new YangParseException(moduleName, line, "Can not set type to " + NAME);
+ throw new YangParseException(getModuleName(), getLine(), "Can not set type to " + NAME);
}
@Override
public void setTypedef(final TypeDefinitionBuilder tdb) {
- throw new YangParseException(moduleName, line, "Can not set type to " + NAME);
+ throw new YangParseException(getModuleName(), getLine(), "Can not set type to " + NAME);
}
@Override
public void setDescription(final String description) {
- throw new YangParseException(moduleName, line, "Can not set description to " + NAME);
+ throw new YangParseException(getModuleName(), getLine(), "Can not set description to " + NAME);
}
@Override
public void setReference(final String reference) {
- throw new YangParseException(moduleName, line, "Can not set reference to " + NAME);
+ throw new YangParseException(getModuleName(), getLine(), "Can not set reference to " + NAME);
}
@Override
public void setStatus(final Status status) {
- throw new YangParseException(moduleName, line, "Can not set status to " + NAME);
+ throw new YangParseException(getModuleName(), getLine(), "Can not set status to " + NAME);
}
@Override
@Override
public void setAddedByUses(final boolean addedByUses) {
- throw new YangParseException(moduleName, line, "Identityref type can not be added by uses.");
+ throw new YangParseException(getModuleName(), getLine(), "Identityref type can not be added by uses.");
}
@Override
public void addUnknownNodeBuilder(final UnknownSchemaNodeBuilder unknownNode) {
- throw new YangParseException(moduleName, line, "Can not add unknown node to " + NAME);
+ throw new YangParseException(getModuleName(), getLine(), "Can not add unknown node to " + NAME);
}
@Override
public QName getQName() {
- return null;
+ return qname;
}
@Override
}
@Override
- public void setPath(SchemaPath path) {
+ public void setPath(final SchemaPath path) {
this.schemaPath = path;
}
}
@Override
- public void setRanges(List<RangeConstraint> ranges) {
- throw new YangParseException(moduleName, line, "Can not set ranges to " + NAME);
+ public void setRanges(final List<RangeConstraint> ranges) {
+ throw new YangParseException(getModuleName(), getLine(), "Can not set ranges to " + NAME);
}
@Override
}
@Override
- public void setLengths(List<LengthConstraint> lengths) {
- throw new YangParseException(moduleName, line, "Can not set lengths to " + NAME);
+ public void setLengths(final List<LengthConstraint> lengths) {
+ throw new YangParseException(getModuleName(), getLine(), "Can not set lengths to " + NAME);
}
@Override
}
@Override
- public void setPatterns(List<PatternConstraint> patterns) {
- throw new YangParseException(moduleName, line, "Can not set patterns to " + NAME);
+ public void setPatterns(final List<PatternConstraint> patterns) {
+ throw new YangParseException(getModuleName(), getLine(), "Can not set patterns to " + NAME);
}
@Override
}
@Override
- public void setFractionDigits(Integer fractionDigits) {
- throw new YangParseException(moduleName, line, "Can not set fraction digits to " + NAME);
+ public void setFractionDigits(final Integer fractionDigits) {
+ throw new YangParseException(getModuleName(), getLine(), "Can not set fraction digits to " + NAME);
}
@Override
}
@Override
- public void setDefaultValue(Object defaultValue) {
- throw new YangParseException(moduleName, line, "Can not set default value to " + NAME);
+ public void setDefaultValue(final Object defaultValue) {
+ throw new YangParseException(getModuleName(), getLine(), "Can not set default value to " + NAME);
}
@Override
public String getUnits() {
return null;
}
-
@Override
- public void setUnits(String units) {
- throw new YangParseException(moduleName, line, "Can not set units to " + NAME);
+ public void setUnits(final String units) {
+ throw new YangParseException(getModuleName(), getLine(), "Can not set units to " + NAME);
}
@Override
public String toString() {
final StringBuilder result = new StringBuilder(IdentityrefTypeBuilder.class.getSimpleName());
+ result.append("[qName=");
+ result.append(qname);
result.append("[");
result.append(", base=");
result.append(baseIdentity);