*/
package org.opendaylight.yangtools.yang.data.tree.impl.node;
+import org.opendaylight.yangtools.concepts.Immutable;
+
/**
- * The concept of a version, either node version, or a subtree version. The
- * only interface contract this class has is that no two versions are the
- * same.
+ * The concept of a version, either node version, or a subtree version. The only interface contract this class has is
+ * that no two {@link Version} are the same.
+ *
+ * <p>
+ * This class relies on Java Virtual machine's guarantee that the identity of an Object is distinct from any other
+ * Object in the Java heap.
+ *
+ * <p>
+ * From data management perspective, this concept serves as JVM-level MVCC
+ * <a href="https://en.wikipedia.org/wiki/Multiversion_concurrency_control#Implementation">timestamp (TS)</a>.
*/
-public final class Version {
+public final class Version implements Immutable {
private Version() {
-
+ // Hidden on purpose
}
/**