import java.util.Collections;
import java.util.List;
+import org.opendaylight.yangtools.concepts.Immutable;
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.UnknownSchemaNode;
import org.opendaylight.yangtools.yang.model.api.type.EmptyTypeDefinition;
-public final class EmptyType implements EmptyTypeDefinition {
- private final QName name = BaseTypes.constructQName("empty");
- private final SchemaPath path;
- private final String description = "The empty built-in type represents a leaf that does not have any value, it conveys information by its presence or absence.";
- private final String reference = "https://tools.ietf.org/html/rfc6020#page-131";
- private final EmptyTypeDefinition baseType;
+public final class EmptyType implements EmptyTypeDefinition, Immutable {
+ private static final EmptyType INSTANCE = new EmptyType();
+ private static final QName NAME = BaseTypes.EMPTY_QNAME;
+ private static final SchemaPath PATH = SchemaPath.create(Collections.singletonList(NAME), true);
+ private static final String DESCRIPTION = "The empty built-in type represents a leaf that does not have any value, it conveys information by its presence or absence.";
+ private static final String REFERENCE = "https://tools.ietf.org/html/rfc6020#page-131";
- public EmptyType(final SchemaPath path) {
- this.path = path;
- this.baseType = this;
+ private EmptyType() {
+ }
+
+ public static EmptyType getInstance() {
+ return INSTANCE;
}
@Override
public EmptyTypeDefinition getBaseType() {
- return baseType;
+ return null;
}
@Override
@Override
public QName getQName() {
- return name;
+ return NAME;
}
@Override
public SchemaPath getPath() {
- return path;
+ return PATH;
}
@Override
public String getDescription() {
- return description;
+ return DESCRIPTION;
}
@Override
public String getReference() {
- return reference;
+ return REFERENCE;
}
@Override
return Collections.emptyList();
}
+ @Override
+ public String toString() {
+ return "type empty " + NAME;
+ }
+
}