Preliminary checkin for implementing version aware topology state.
diff --git a/core/store/src/main/java/org/onlab/onos/store/impl/OnosTimestamp.java b/core/store/src/main/java/org/onlab/onos/store/impl/OnosTimestamp.java
index f994e02..5b68d1a 100644
--- a/core/store/src/main/java/org/onlab/onos/store/impl/OnosTimestamp.java
+++ b/core/store/src/main/java/org/onlab/onos/store/impl/OnosTimestamp.java
@@ -1,11 +1,9 @@
package org.onlab.onos.store.impl;
-import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Preconditions.checkArgument;
import java.util.Objects;
-import org.onlab.onos.net.ElementId;
import org.onlab.onos.store.Timestamp;
import com.google.common.base.MoreObjects;
@@ -14,22 +12,20 @@
// If it is store specific, implement serializable interfaces?
/**
* Default implementation of Timestamp.
+ * TODO: Better documentation.
*/
public final class OnosTimestamp implements Timestamp {
- private final ElementId id;
private final int termNumber;
private final int sequenceNumber;
/**
* Default version tuple.
*
- * @param id identifier of the element
* @param termNumber the mastership termNumber
* @param sequenceNumber the sequenceNumber number within the termNumber
*/
- public OnosTimestamp(ElementId id, int termNumber, int sequenceNumber) {
- this.id = checkNotNull(id);
+ public OnosTimestamp(int termNumber, int sequenceNumber) {
this.termNumber = termNumber;
this.sequenceNumber = sequenceNumber;
}
@@ -38,9 +34,6 @@
public int compareTo(Timestamp o) {
checkArgument(o instanceof OnosTimestamp, "Must be OnosTimestamp", o);
OnosTimestamp that = (OnosTimestamp) o;
- checkArgument(this.id.equals(that.id),
- "Cannot compare version for different element this:%s, that:%s",
- this, that);
return ComparisonChain.start()
.compare(this.termNumber, that.termNumber)
@@ -50,7 +43,7 @@
@Override
public int hashCode() {
- return Objects.hash(id, termNumber, sequenceNumber);
+ return Objects.hash(termNumber, sequenceNumber);
}
@Override
@@ -62,30 +55,19 @@
return false;
}
OnosTimestamp that = (OnosTimestamp) obj;
- return Objects.equals(this.id, that.id) &&
- Objects.equals(this.termNumber, that.termNumber) &&
+ return Objects.equals(this.termNumber, that.termNumber) &&
Objects.equals(this.sequenceNumber, that.sequenceNumber);
}
@Override
public String toString() {
return MoreObjects.toStringHelper(getClass())
- .add("id", id)
.add("termNumber", termNumber)
.add("sequenceNumber", sequenceNumber)
.toString();
}
/**
- * Returns the element.
- *
- * @return element identifier
- */
- public ElementId id() {
- return id;
- }
-
- /**
* Returns the termNumber.
*
* @return termNumber
@@ -102,4 +84,4 @@
public int sequenceNumber() {
return sequenceNumber;
}
-}
+}
\ No newline at end of file