Merge "BUG-2350: do encapsulte null snapshot"
[yangtools.git] / yang / yang-model-util / src / main / java / org / opendaylight / yangtools / yang / model / util / EmptyType.java
index ee56f760d49b7dff67bd4ba00ad81e7209be4d84..7efebad4d43bdd4b0d2d5c8a84826de0ef09082e 100644 (file)
@@ -10,16 +10,17 @@ package org.opendaylight.yangtools.yang.model.util;
 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 static EmptyType instance;
-    private static final QName NAME = BaseTypes.constructQName("empty");
-    private static final SchemaPath PATH = new SchemaPath(Collections.singletonList(NAME), true);
+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";
 
@@ -27,15 +28,12 @@ public final class EmptyType implements EmptyTypeDefinition {
     }
 
     public static EmptyType getInstance() {
-        if (instance == null) {
-            instance = new EmptyType();
-        }
-        return instance;
+        return INSTANCE;
     }
 
     @Override
     public EmptyTypeDefinition getBaseType() {
-        return this;
+        return null;
     }
 
     @Override