Moved generic Timestamp/ClockManager classes to onos-api
so they are usable by applications.

Change-Id: Icf0e92d12434dec782332e91b632da8066a85b60
diff --git a/core/store/dist/src/main/java/org/onosproject/store/impl/MultiValuedTimestamp.java b/core/api/src/main/java/org/onosproject/store/service/MultiValuedTimestamp.java
similarity index 98%
rename from core/store/dist/src/main/java/org/onosproject/store/impl/MultiValuedTimestamp.java
rename to core/api/src/main/java/org/onosproject/store/service/MultiValuedTimestamp.java
index f460dbd..e068b8e 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/impl/MultiValuedTimestamp.java
+++ b/core/api/src/main/java/org/onosproject/store/service/MultiValuedTimestamp.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.store.impl;
+package org.onosproject.store.service;
 
 import com.google.common.base.MoreObjects;
 import com.google.common.collect.ComparisonChain;
diff --git a/core/store/dist/src/main/java/org/onosproject/store/impl/WallClockTimestamp.java b/core/api/src/main/java/org/onosproject/store/service/WallClockTimestamp.java
similarity index 97%
rename from core/store/dist/src/main/java/org/onosproject/store/impl/WallClockTimestamp.java
rename to core/api/src/main/java/org/onosproject/store/service/WallClockTimestamp.java
index e7efb29..0cc7b45 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/impl/WallClockTimestamp.java
+++ b/core/api/src/main/java/org/onosproject/store/service/WallClockTimestamp.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.store.impl;
+package org.onosproject.store.service;
 
 import static com.google.common.base.Preconditions.checkArgument;
 
diff --git a/core/store/dist/src/main/java/org/onosproject/store/impl/WallclockClockManager.java b/core/api/src/main/java/org/onosproject/store/service/WallclockClockManager.java
similarity index 90%
rename from core/store/dist/src/main/java/org/onosproject/store/impl/WallclockClockManager.java
rename to core/api/src/main/java/org/onosproject/store/service/WallclockClockManager.java
index fd25ebf..c2b5ffb 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/impl/WallclockClockManager.java
+++ b/core/api/src/main/java/org/onosproject/store/service/WallclockClockManager.java
@@ -13,10 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.store.impl;
+package org.onosproject.store.service;
 
 import org.onosproject.store.Timestamp;
-import org.onosproject.store.service.ClockService;
 
 /**
  * A clock service which hands out wallclock-based timestamps.
diff --git a/core/store/dist/src/main/java/org/onosproject/store/app/GossipApplicationStore.java b/core/store/dist/src/main/java/org/onosproject/store/app/GossipApplicationStore.java
index 4910ce4..6cfb218 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/app/GossipApplicationStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/app/GossipApplicationStore.java
@@ -43,7 +43,7 @@
 import org.onosproject.store.cluster.messaging.ClusterMessage;
 import org.onosproject.store.cluster.messaging.ClusterMessageHandler;
 import org.onosproject.store.cluster.messaging.MessageSubject;
-import org.onosproject.store.impl.MultiValuedTimestamp;
+import org.onosproject.store.service.MultiValuedTimestamp;
 import org.onosproject.store.serializers.KryoNamespaces;
 import org.onosproject.store.service.EventuallyConsistentMap;
 import org.onosproject.store.service.EventuallyConsistentMapEvent;
diff --git a/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java b/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java
index c46131e..f03215d 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java
@@ -35,7 +35,7 @@
 import org.onosproject.store.cluster.messaging.MessageSubject;
 import org.onosproject.store.impl.LogicalTimestamp;
 import org.onosproject.store.impl.Timestamped;
-import org.onosproject.store.impl.WallClockTimestamp;
+import org.onosproject.store.service.WallClockTimestamp;
 import org.onosproject.store.serializers.KryoSerializer;
 import org.onosproject.store.service.ClockService;
 import org.onosproject.store.service.EventuallyConsistentMap;
diff --git a/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java b/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
index 8a31de1..60b72d7 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
@@ -62,7 +62,7 @@
 import org.onosproject.store.cluster.messaging.ClusterCommunicationService;
 import org.onosproject.store.cluster.messaging.ClusterMessage;
 import org.onosproject.store.cluster.messaging.ClusterMessageHandler;
-import org.onosproject.store.impl.MultiValuedTimestamp;
+import org.onosproject.store.service.MultiValuedTimestamp;
 import org.onosproject.store.serializers.KryoNamespaces;
 import org.onosproject.store.service.ClockService;
 import org.onosproject.store.service.EventuallyConsistentMap;
diff --git a/core/store/dist/src/main/java/org/onosproject/store/host/impl/HostClockManager.java b/core/store/dist/src/main/java/org/onosproject/store/host/impl/HostClockManager.java
index 097af85..f96568b 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/host/impl/HostClockManager.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/host/impl/HostClockManager.java
@@ -24,7 +24,7 @@
 import org.onosproject.net.HostId;
 import org.onosproject.net.host.HostClockService;
 import org.onosproject.store.Timestamp;
-import org.onosproject.store.impl.WallClockTimestamp;
+import org.onosproject.store.service.WallClockTimestamp;
 import org.slf4j.Logger;
 
 /**
diff --git a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/GossipIntentStore.java b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/GossipIntentStore.java
index 7de2d17..9412dac 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/GossipIntentStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/GossipIntentStore.java
@@ -36,8 +36,8 @@
 import org.onosproject.net.intent.Key;
 import org.onosproject.net.intent.PartitionService;
 import org.onosproject.store.AbstractStore;
-import org.onosproject.store.impl.MultiValuedTimestamp;
-import org.onosproject.store.impl.WallClockTimestamp;
+import org.onosproject.store.service.MultiValuedTimestamp;
+import org.onosproject.store.service.WallClockTimestamp;
 import org.onosproject.store.serializers.KryoNamespaces;
 import org.onosproject.store.service.EventuallyConsistentMap;
 import org.onosproject.store.service.EventuallyConsistentMapEvent;
diff --git a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentClockManager.java b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentClockManager.java
index 7dea4df..a0d7d2f 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentClockManager.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentClockManager.java
@@ -22,7 +22,7 @@
 import org.onosproject.net.intent.IntentClockService;
 import org.onosproject.net.intent.IntentId;
 import org.onosproject.store.Timestamp;
-import org.onosproject.store.impl.WallClockTimestamp;
+import org.onosproject.store.service.WallClockTimestamp;
 import org.slf4j.Logger;
 
 import static org.slf4j.LoggerFactory.getLogger;
diff --git a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataClockManager.java b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataClockManager.java
index 1c4ffbf..d828988 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataClockManager.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataClockManager.java
@@ -18,7 +18,7 @@
 import org.onosproject.net.intent.IntentData;
 import org.onosproject.store.Timestamp;
 import org.onosproject.store.service.ClockService;
-import org.onosproject.store.impl.MultiValuedTimestamp;
+import org.onosproject.store.service.MultiValuedTimestamp;
 
 /**
  * ClockService that uses IntentData versions as timestamps.
diff --git a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataLogicalClockManager.java b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataLogicalClockManager.java
index 9d21223..8d78138 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataLogicalClockManager.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/intent/impl/IntentDataLogicalClockManager.java
@@ -18,7 +18,7 @@
 import org.onosproject.net.intent.IntentData;
 import org.onosproject.store.Timestamp;
 import org.onosproject.store.service.ClockService;
-import org.onosproject.store.impl.MultiValuedTimestamp;
+import org.onosproject.store.service.MultiValuedTimestamp;
 
 import java.util.concurrent.atomic.AtomicLong;
 
diff --git a/core/store/dist/src/main/java/org/onosproject/store/serializers/impl/DistributedStoreSerializers.java b/core/store/dist/src/main/java/org/onosproject/store/serializers/impl/DistributedStoreSerializers.java
index 6748154..d717a31 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/serializers/impl/DistributedStoreSerializers.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/serializers/impl/DistributedStoreSerializers.java
@@ -17,7 +17,7 @@
 
 import org.onosproject.store.impl.MastershipBasedTimestamp;
 import org.onosproject.store.impl.Timestamped;
-import org.onosproject.store.impl.WallClockTimestamp;
+import org.onosproject.store.service.WallClockTimestamp;
 import org.onosproject.store.serializers.KryoNamespaces;
 import org.onlab.util.KryoNamespace;
 
diff --git a/core/store/dist/src/test/java/org/onosproject/store/ecmap/EventuallyConsistentMapImplTest.java b/core/store/dist/src/test/java/org/onosproject/store/ecmap/EventuallyConsistentMapImplTest.java
index a4db35f..c215f5b 100644
--- a/core/store/dist/src/test/java/org/onosproject/store/ecmap/EventuallyConsistentMapImplTest.java
+++ b/core/store/dist/src/test/java/org/onosproject/store/ecmap/EventuallyConsistentMapImplTest.java
@@ -38,7 +38,7 @@
 import org.onosproject.store.cluster.messaging.MessageSubject;
 import org.onosproject.store.service.ClockService;
 import org.onosproject.store.impl.LogicalTimestamp;
-import org.onosproject.store.impl.WallClockTimestamp;
+import org.onosproject.store.service.WallClockTimestamp;
 import org.onosproject.store.serializers.KryoNamespaces;
 import org.onosproject.store.serializers.KryoSerializer;
 import org.onosproject.store.service.EventuallyConsistentMap;
diff --git a/core/store/dist/src/test/java/org/onosproject/store/impl/WallClockTimestampTest.java b/core/store/dist/src/test/java/org/onosproject/store/impl/WallClockTimestampTest.java
index c0fda9e..ead4612 100644
--- a/core/store/dist/src/test/java/org/onosproject/store/impl/WallClockTimestampTest.java
+++ b/core/store/dist/src/test/java/org/onosproject/store/impl/WallClockTimestampTest.java
@@ -24,6 +24,7 @@
 import org.onlab.util.KryoNamespace;
 
 import com.google.common.testing.EqualsTester;
+import org.onosproject.store.service.WallClockTimestamp;
 
 /**
  * Tests for {@link WallClockTimestamp}.