diff options
Diffstat (limited to 'framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl')
4 files changed, 0 insertions, 339 deletions
diff --git a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/LogicalTimestamp.java b/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/LogicalTimestamp.java deleted file mode 100644 index dfee9980..00000000 --- a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/LogicalTimestamp.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.onosproject.store.impl; - -import static com.google.common.base.Preconditions.checkArgument; - -import java.util.Objects; - -import org.onosproject.store.Timestamp; - -import com.google.common.base.MoreObjects; -import com.google.common.collect.ComparisonChain; - -/** - * Timestamp based on logical sequence value. - * <p> - * LogicalTimestamps are ordered by their sequence values. - */ -public class LogicalTimestamp implements Timestamp { - - private final long value; - - public LogicalTimestamp(long value) { - this.value = value; - } - - @Override - public int compareTo(Timestamp o) { - checkArgument(o instanceof LogicalTimestamp, - "Must be LogicalTimestamp", o); - LogicalTimestamp that = (LogicalTimestamp) o; - - return ComparisonChain.start() - .compare(this.value, that.value) - .result(); - } - - @Override - public int hashCode() { - return Long.hashCode(value); - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (!(obj instanceof LogicalTimestamp)) { - return false; - } - LogicalTimestamp that = (LogicalTimestamp) obj; - return Objects.equals(this.value, that.value); - } - - @Override - public String toString() { - return MoreObjects.toStringHelper(getClass()) - .add("value", value) - .toString(); - } - - /** - * Returns the sequence value. - * - * @return sequence value - */ - public long value() { - return this.value; - } -} diff --git a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/MastershipBasedTimestamp.java b/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/MastershipBasedTimestamp.java deleted file mode 100644 index 15b3c3c6..00000000 --- a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/MastershipBasedTimestamp.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright 2014-2015 Open Networking Laboratory - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.onosproject.store.impl; - -import static com.google.common.base.Preconditions.checkArgument; - -import java.util.Objects; - -import org.onosproject.store.Timestamp; - -import com.google.common.base.MoreObjects; -import com.google.common.collect.ComparisonChain; - -/** - * A logical timestamp that derives its value from two things: - * <ul> - * <li> The current mastership term of the device.</li> - * <li> The value of the counter used for tracking topology events observed from - * the device during that current time of a device. </li> - * </ul> - */ -public final class MastershipBasedTimestamp implements Timestamp { - - private final long termNumber; - private final long sequenceNumber; - - /** - * Default version tuple. - * - * @param termNumber the mastership termNumber - * @param sequenceNumber the sequenceNumber number within the termNumber - */ - public MastershipBasedTimestamp(long termNumber, long sequenceNumber) { - this.termNumber = termNumber; - this.sequenceNumber = sequenceNumber; - } - - @Override - public int compareTo(Timestamp o) { - checkArgument(o instanceof MastershipBasedTimestamp, - "Must be MastershipBasedTimestamp", o); - MastershipBasedTimestamp that = (MastershipBasedTimestamp) o; - - return ComparisonChain.start() - .compare(this.termNumber, that.termNumber) - .compare(this.sequenceNumber, that.sequenceNumber) - .result(); - } - - @Override - public int hashCode() { - return Objects.hash(termNumber, sequenceNumber); - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (!(obj instanceof MastershipBasedTimestamp)) { - return false; - } - MastershipBasedTimestamp that = (MastershipBasedTimestamp) obj; - return Objects.equals(this.termNumber, that.termNumber) && - Objects.equals(this.sequenceNumber, that.sequenceNumber); - } - - @Override - public String toString() { - return MoreObjects.toStringHelper(getClass()) - .add("termNumber", termNumber) - .add("sequenceNumber", sequenceNumber) - .toString(); - } - - /** - * Returns the termNumber. - * - * @return termNumber - */ - public long termNumber() { - return termNumber; - } - - /** - * Returns the sequenceNumber number. - * - * @return sequenceNumber - */ - public long sequenceNumber() { - return sequenceNumber; - } - - // Default constructor for serialization - - /** - * @deprecated in Cardinal Release - */ - @Deprecated - protected MastershipBasedTimestamp() { - this.termNumber = -1; - this.sequenceNumber = -1; - } -} diff --git a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/Timestamped.java b/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/Timestamped.java deleted file mode 100644 index ae7267b8..00000000 --- a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/Timestamped.java +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright 2014-2015 Open Networking Laboratory - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.onosproject.store.impl; - -import com.google.common.base.MoreObjects; -import org.onosproject.store.Timestamp; - -import java.util.Objects; - -import static com.google.common.base.Preconditions.checkNotNull; - -/** - * Wrapper class to store Timestamped value. - * - * @param <T> Timestamped value type - */ -public final class Timestamped<T> { - - private final Timestamp timestamp; - private final T value; - - /** - * Creates a time stamped value. - * - * @param value to be timestamp - * @param timestamp the timestamp - */ - public Timestamped(T value, Timestamp timestamp) { - this.value = checkNotNull(value); - this.timestamp = checkNotNull(timestamp); - } - - /** - * Returns the value. - * - * @return value - */ - public T value() { - return value; - } - - /** - * Returns the time stamp. - * - * @return time stamp - */ - public Timestamp timestamp() { - return timestamp; - } - - /** - * Tests if this timestamped value is newer than the other. - * - * @param other timestamped value - * @return true if this instance is newer. - */ - public boolean isNewer(Timestamped<T> other) { - return isNewerThan(checkNotNull(other).timestamp()); - } - - /** - * Tests if this timestamp is newer than the specified timestamp. - * - * @param other timestamp to compare against - * @return true if this instance is newer - */ - public boolean isNewerThan(Timestamp other) { - return timestamp.isNewerThan(other); - } - - @Override - public int hashCode() { - return timestamp.hashCode(); - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (!(obj instanceof Timestamped)) { - return false; - } - @SuppressWarnings("unchecked") - Timestamped<T> that = (Timestamped<T>) obj; - return Objects.equals(this.timestamp, that.timestamp); - } - - @Override - public String toString() { - return MoreObjects.toStringHelper(getClass()) - .add("timestamp", timestamp) - .add("value", value) - .toString(); - } - - // Default constructor for serialization - /** - * @deprecated in Cardinal Release - */ - @Deprecated - private Timestamped() { - this.value = null; - this.timestamp = null; - } -} diff --git a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/package-info.java b/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/package-info.java deleted file mode 100644 index 03786fac..00000000 --- a/framework/src/onos/core/store/dist/src/main/java/org/onosproject/store/impl/package-info.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2014 Open Networking Laboratory - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * Common facilities for use by various distributed stores. - */ -package org.onosproject.store.impl; |