import org.opendaylight.yangtools.yang.model.api.Module;
import org.opendaylight.yangtools.yang.model.api.SchemaPath;
import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
+import org.opendaylight.yangtools.yang.model.api.type.DecimalTypeDefinition;
+import org.opendaylight.yangtools.yang.model.api.type.IntegerTypeDefinition;
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.type.UnsignedIntegerTypeDefinition;
import org.opendaylight.yangtools.yang.model.util.ExtendedType;
/**
if (type instanceof ExtendedType) {
ExtendedType ext = (ExtendedType)type;
+ TypeDefinition<?> base = ext.getBaseType();
length.addAll(ext.getLengthConstraints());
pattern.addAll(ext.getPatternConstraints());
range.addAll(ext.getRangeConstraints());
+
+ if (base instanceof IntegerTypeDefinition && range.isEmpty()) {
+ range.addAll(((IntegerTypeDefinition)base).getRangeConstraints());
+ } else if (base instanceof UnsignedIntegerTypeDefinition && range.isEmpty()) {
+ range.addAll(((UnsignedIntegerTypeDefinition)base).getRangeConstraints());
+ } else if (base instanceof DecimalTypeDefinition && range.isEmpty()) {
+ range.addAll(((DecimalTypeDefinition)base).getRangeConstraints());
+ }
+
}
return new Restrictions() {