Revert "Fix mandatory enforcer failure on augmented nodes"
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / schema / tree / DataTreeState.java
index 9419d08f67566b36643348972afcbb6da2b8bef0..522b402efdc76a5b79d79d8a02c43d16408f0118 100644 (file)
@@ -7,10 +7,13 @@
  */
 package org.opendaylight.yangtools.yang.data.impl.schema.tree;
 
-import com.google.common.base.Objects;
-import com.google.common.base.Preconditions;
+import static java.util.Objects.requireNonNull;
+
+import com.google.common.base.MoreObjects;
+import org.eclipse.jdt.annotation.NonNull;
+import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.spi.TreeNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
+import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 
 /**
  * Instances of this class hold the current state of a DataTree instance.
@@ -19,27 +22,28 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContext;
  */
 final class DataTreeState {
     private final LatestOperationHolder holder;
-    private final SchemaContext schemaContext;
-    private final TreeNode root;
+    private final EffectiveModelContext schemaContext;
+    private final @NonNull TreeNode root;
 
     private DataTreeState(final TreeNode root) {
-        this.root = Preconditions.checkNotNull(root);
+        this.root = requireNonNull(root);
         holder = new LatestOperationHolder();
         schemaContext = null;
     }
 
-    private DataTreeState(final TreeNode root, final LatestOperationHolder holder, final SchemaContext schemaContext) {
+    private DataTreeState(final TreeNode root, final LatestOperationHolder holder,
+            final EffectiveModelContext schemaContext) {
         // It should be impossible to instantiate a new root without a SchemaContext
-        this.schemaContext = Preconditions.checkNotNull(schemaContext);
-        this.holder = Preconditions.checkNotNull(holder);
-        this.root = Preconditions.checkNotNull(root);
+        this.schemaContext = requireNonNull(schemaContext);
+        this.holder = requireNonNull(holder);
+        this.root = requireNonNull(root);
     }
 
     static DataTreeState createInitial(final TreeNode root) {
         return new DataTreeState(root);
     }
 
-    TreeNode getRoot() {
+    @NonNull TreeNode getRoot() {
         return root;
     }
 
@@ -47,7 +51,8 @@ final class DataTreeState {
         return new InMemoryDataTreeSnapshot(schemaContext, root, holder.newSnapshot());
     }
 
-    DataTreeState withSchemaContext(final SchemaContext newSchemaContext, final SchemaAwareApplyOperation operation) {
+    DataTreeState withSchemaContext(final EffectiveModelContext newSchemaContext,
+            final ModificationApplyOperation operation) {
         holder.setCurrent(operation);
         return new DataTreeState(root, holder, newSchemaContext);
     }
@@ -59,6 +64,6 @@ final class DataTreeState {
     @Override
     public String toString() {
         final TreeNode r = root;
-        return Objects.toStringHelper(this).add("data", StoreUtils.toStringTree(r.getData())).toString();
+        return MoreObjects.toStringHelper(this).add("data", NormalizedNodes.toStringTree(r.getData())).toString();
     }
 }
\ No newline at end of file