import java.util.Collections;
import java.util.List;
-import org.opendaylight.controller.model.util.UnknownType;
-import org.opendaylight.controller.model.util.YangTypesConverter;
import org.opendaylight.controller.yang.common.QName;
import org.opendaylight.controller.yang.model.api.SchemaPath;
import org.opendaylight.controller.yang.model.api.Status;
import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder;
import org.opendaylight.controller.yang.model.parser.builder.api.TypeAwareBuilder;
import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder;
+import org.opendaylight.controller.yang.model.util.UnknownType;
+import org.opendaylight.controller.yang.model.util.YangTypesConverter;
public class TypedefBuilder implements TypeDefinitionBuilder,
SchemaNodeBuilder, TypeAwareBuilder {
private String reference;
private Status status;
private String units;
+ private Object defaultValue;
TypedefBuilder(QName qname) {
this.qname = qname;
instance.setPath(schemaPath);
instance.setBaseType(baseType);
instance.setUnits(units);
+ instance.setDefaultValue(defaultValue);
return instance;
} else {
// type
this.units = units;
}
+ @Override
+ public void setDefaultValue(Object defaultValue) {
+ this.defaultValue = defaultValue;
+ }
+
@Override
public TypeDefinition<?> getType() {
return baseType;
return baseType;
}
+ @Override
+ public void addUnknownSchemaNode(UnknownSchemaNodeBuilder unknownSchemaNodeBuilder) {
+ // TODO
+ }
+
private static class TypeDefinitionImpl<T extends TypeDefinition<T>>
implements TypeDefinition<T> {
private String description;
private String reference;
private Status status = Status.CURRENT;
+ private Object defaultValue;
private T baseType;
private String units;
private List<UnknownSchemaNode> unknownSchemaNodes = Collections.emptyList();
@Override
public Object getDefaultValue() {
- // TODO Auto-generated method stub
- return null;
+ return defaultValue;
+ }
+
+ private void setDefaultValue(Object defaultValue) {
+ this.defaultValue = defaultValue;
}
@Override