*/
package org.opendaylight.yangtools.yang.data.util;
+import static java.util.Objects.requireNonNull;
+
import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
-public abstract class SimpleNodeDataWithSchema extends AbstractNodeDataWithSchema {
+/**
+ * Utility class used for tracking parser state as needed by a StAX-like parser.
+ * This class is to be used only by respective XML and JSON parsers in yang-data-codec-xml and yang-data-codec-gson.
+ *
+ * <p>
+ * Represents a simple node with value (anyxml, leaf, leaf-list entry).
+ */
+public abstract class SimpleNodeDataWithSchema<T extends DataSchemaNode> extends AbstractNodeDataWithSchema<T> {
private Object value;
- public SimpleNodeDataWithSchema(final DataSchemaNode dataSchemaNode) {
+ public SimpleNodeDataWithSchema(final T dataSchemaNode) {
super(dataSchemaNode);
}
public void setValue(final Object value) {
- this.value = value;
+ this.value = requireNonNull(value);
}
public Object getValue() {
return value;
}
-
}