Add javadoc for MapValue
Change-Id: I025e21a670562e387138afddcdd78a214b3a81e1
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MapValue.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MapValue.java
index 457caeb..c80806f 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MapValue.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MapValue.java
@@ -34,6 +34,7 @@
/**
* Creates a tombstone value with the specified timestamp.
+ *
* @param timestamp timestamp for tombstone
* @return tombstone MapValue
*
@@ -43,12 +44,18 @@
return new MapValue<>(null, timestamp, System.currentTimeMillis());
}
+ /**
+ * Constructor automatically to create the system time of construction.
+ *
+ * @param value value
+ * @param timestamp value timestamp
+ */
public MapValue(V value, Timestamp timestamp) {
this(value, timestamp, System.currentTimeMillis());
}
/**
- * Constructor.
+ * Creates a map value using value, timestamp, and creation time.
*
* @param value value
* @param timestamp value timestamp.
@@ -71,31 +78,57 @@
return new MapValue<>(this.value, this.timestamp, System.currentTimeMillis());
}
+ /**
+ * Tests if this value is tombstone value with the specified timestamp.
+ *
+ * @return true if this value is null, otherwise false
+ */
public boolean isTombstone() {
return value == null;
}
+ /**
+ * Tests if this value is alive.
+ *
+ * @return true if this value is not null, otherwise false
+ */
public boolean isAlive() {
return value != null;
}
+ /**
+ * Returns the timestamp of this value.
+ *
+ * @return timestamp
+ */
public Timestamp timestamp() {
return timestamp;
}
+ /**
+ * Returns this value.
+ *
+ * @return value
+ */
public V get() {
return value;
}
+ /**
+ * Returns the creation time of this value.
+ *
+ * @return creationTime
+ */
public long creationTime() {
return creationTime;
}
- @Override
- public int compareTo(MapValue<V> o) {
- return this.timestamp.compareTo(o.timestamp);
- }
-
+ /**
+ * Tests if this value is newer than the specified MapValue.
+ *
+ * @param other the value to be compared
+ * @return true if this value is newer than other
+ */
public boolean isNewerThan(MapValue<V> other) {
if (other == null) {
return true;
@@ -103,15 +136,31 @@
return this.timestamp.isNewerThan(other.timestamp);
}
+ /**
+ * Tests if this timestamp is newer than the specified timestamp.
+ *
+ * @param timestamp timestamp to be compared
+ * @return true if this instance is newer
+ */
public boolean isNewerThan(Timestamp timestamp) {
return this.timestamp.isNewerThan(timestamp);
}
+ /**
+ * Returns summary of a MapValue for use during Anti-Entropy exchanges.
+ *
+ * @return Digest with timestamp and whether this value is null or not
+ */
public Digest digest() {
return new Digest(timestamp, isTombstone());
}
@Override
+ public int compareTo(MapValue<V> o) {
+ return this.timestamp.compareTo(o.timestamp);
+ }
+
+ @Override
public int hashCode() {
return Objects.hashCode(timestamp, value);
}