Refactored code in an attempt to break dependency cycles
diff --git a/core/api/src/main/java/org/onlab/onos/store/ClockProviderService.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceClockProviderService.java
similarity index 64%
rename from core/api/src/main/java/org/onlab/onos/store/ClockProviderService.java
rename to core/api/src/main/java/org/onlab/onos/net/device/DeviceClockProviderService.java
index fff6d15..6ef480d 100644
--- a/core/api/src/main/java/org/onlab/onos/store/ClockProviderService.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceClockProviderService.java
@@ -1,14 +1,13 @@
-package org.onlab.onos.store;
+package org.onlab.onos.net.device;
import org.onlab.onos.net.DeviceId;
-import org.onlab.onos.net.device.DeviceMastershipTerm;
//TODO: Consider renaming to DeviceClockProviderService?
/**
* Interface for feeding term information to a logical clock service
* that vends per device timestamps.
*/
-public interface ClockProviderService {
+public interface DeviceClockProviderService {
/**
* Updates the mastership term for the specified deviceId.
@@ -16,5 +15,5 @@
* @param deviceId device identifier.
* @param term mastership term.
*/
- public void setMastershipTerm(DeviceId deviceId, DeviceMastershipTerm term);
+ public void setDeviceMastershipTerm(DeviceId deviceId, DeviceMastershipTerm term);
}
diff --git a/core/api/src/main/java/org/onlab/onos/store/ClockService.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceClockService.java
similarity index 83%
rename from core/api/src/main/java/org/onlab/onos/store/ClockService.java
rename to core/api/src/main/java/org/onlab/onos/net/device/DeviceClockService.java
index 20549e8..b979db2 100644
--- a/core/api/src/main/java/org/onlab/onos/store/ClockService.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceClockService.java
@@ -1,4 +1,4 @@
-package org.onlab.onos.store;
+package org.onlab.onos.net.device;
import org.onlab.onos.net.DeviceId;
@@ -6,7 +6,7 @@
/**
* Interface for a logical clock service that vends per device timestamps.
*/
-public interface ClockService {
+public interface DeviceClockService {
/**
* Returns a new timestamp for the specified deviceId.
diff --git a/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipAdminService.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipAdminService.java
index 78c9c39..3d31f37 100644
--- a/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipAdminService.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipAdminService.java
@@ -2,7 +2,6 @@
import org.onlab.onos.cluster.NodeId;
import org.onlab.onos.net.DeviceId;
-import org.onlab.onos.net.MastershipRole;
/**
* Service for administering the inventory of device masterships.
@@ -16,6 +15,6 @@
* @param deviceId device identifier
* @param role requested role
*/
- void setRole(NodeId instance, DeviceId deviceId, MastershipRole role);
+ void setRole(NodeId instance, DeviceId deviceId, DeviceMastershipRole role);
}
diff --git a/core/api/src/main/java/org/onlab/onos/net/MastershipRole.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipRole.java
similarity index 89%
rename from core/api/src/main/java/org/onlab/onos/net/MastershipRole.java
rename to core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipRole.java
index 10d53ad..89bdc59 100644
--- a/core/api/src/main/java/org/onlab/onos/net/MastershipRole.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipRole.java
@@ -1,10 +1,10 @@
-package org.onlab.onos.net;
+package org.onlab.onos.net.device;
/**
* Representation of a relationship role of a controller instance to a device
* or a region of network environment.
*/
-public enum MastershipRole {
+public enum DeviceMastershipRole {
/**
* Represents a relationship where the controller instance is the master
diff --git a/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipService.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipService.java
index a44abfd..18683ea 100644
--- a/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipService.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipService.java
@@ -4,7 +4,6 @@
import org.onlab.onos.cluster.NodeId;
import org.onlab.onos.net.DeviceId;
-import org.onlab.onos.net.MastershipRole;
/**
* Service responsible for determining the controller instance mastership of
@@ -21,7 +20,7 @@
* @param deviceId the the identifier of the device
* @return role of the current node
*/
- MastershipRole getLocalRole(DeviceId deviceId);
+ DeviceMastershipRole getLocalRole(DeviceId deviceId);
/**
* Returns the mastership status of the local controller for a given
@@ -30,7 +29,7 @@
* @param deviceId the the identifier of the device
* @return the role of this controller instance
*/
- MastershipRole requestRoleFor(DeviceId deviceId);
+ DeviceMastershipRole requestRoleFor(DeviceId deviceId);
/**
* Abandons mastership of the specified device on the local node thus
diff --git a/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipStore.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipStore.java
index ee9b253..9c1b3e6 100644
--- a/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipStore.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceMastershipStore.java
@@ -4,7 +4,6 @@
import org.onlab.onos.cluster.NodeId;
import org.onlab.onos.net.DeviceId;
-import org.onlab.onos.net.MastershipRole;
import org.onlab.onos.store.Store;
/**
@@ -21,7 +20,7 @@
* @param deviceId device identifier
* @return established or newly negotiated mastership role
*/
- MastershipRole requestRole(DeviceId deviceId);
+ DeviceMastershipRole requestRole(DeviceId deviceId);
/**
* Returns the role of a device for a specific controller instance.
@@ -30,7 +29,7 @@
* @param deviceId the device identifiers
* @return the role
*/
- MastershipRole getRole(NodeId nodeId, DeviceId deviceId);
+ DeviceMastershipRole getRole(NodeId nodeId, DeviceId deviceId);
/**
* Returns the master for a device.
diff --git a/core/api/src/main/java/org/onlab/onos/net/device/DeviceProvider.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceProvider.java
index 9934b8d..9a51a16 100644
--- a/core/api/src/main/java/org/onlab/onos/net/device/DeviceProvider.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceProvider.java
@@ -1,7 +1,6 @@
package org.onlab.onos.net.device;
import org.onlab.onos.net.Device;
-import org.onlab.onos.net.MastershipRole;
import org.onlab.onos.net.provider.Provider;
/**
@@ -30,6 +29,6 @@
* @param device affected device
* @param newRole newly determined mastership role
*/
- void roleChanged(Device device, MastershipRole newRole);
+ void roleChanged(Device device, DeviceMastershipRole newRole);
}
diff --git a/core/api/src/main/java/org/onlab/onos/net/device/DeviceProviderService.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceProviderService.java
index d043eca..168b684 100644
--- a/core/api/src/main/java/org/onlab/onos/net/device/DeviceProviderService.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceProviderService.java
@@ -1,7 +1,6 @@
package org.onlab.onos.net.device;
import org.onlab.onos.net.DeviceId;
-import org.onlab.onos.net.MastershipRole;
import org.onlab.onos.net.provider.ProviderService;
import java.util.List;
@@ -53,6 +52,6 @@
* @param deviceId identity of the device
* @param role mastership role that was asserted but failed
*/
- void unableToAssertRole(DeviceId deviceId, MastershipRole role);
+ void unableToAssertRole(DeviceId deviceId, DeviceMastershipRole role);
}
diff --git a/core/api/src/main/java/org/onlab/onos/net/device/DeviceService.java b/core/api/src/main/java/org/onlab/onos/net/device/DeviceService.java
index 54b9d72..3a6f89b 100644
--- a/core/api/src/main/java/org/onlab/onos/net/device/DeviceService.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/DeviceService.java
@@ -2,7 +2,6 @@
import org.onlab.onos.net.Device;
import org.onlab.onos.net.DeviceId;
-import org.onlab.onos.net.MastershipRole;
import org.onlab.onos.net.Port;
import org.onlab.onos.net.PortNumber;
@@ -43,7 +42,7 @@
* @return designated mastership role
*/
//XXX do we want this method here when MastershipService already does?
- MastershipRole getRole(DeviceId deviceId);
+ DeviceMastershipRole getRole(DeviceId deviceId);
/**
diff --git a/core/api/src/main/java/org/onlab/onos/store/Timestamp.java b/core/api/src/main/java/org/onlab/onos/net/device/Timestamp.java
similarity index 90%
rename from core/api/src/main/java/org/onlab/onos/store/Timestamp.java
rename to core/api/src/main/java/org/onlab/onos/net/device/Timestamp.java
index b3caf85..8acf16c 100644
--- a/core/api/src/main/java/org/onlab/onos/store/Timestamp.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/Timestamp.java
@@ -1,4 +1,4 @@
-package org.onlab.onos.store;
+package org.onlab.onos.net.device;
/**
* Opaque version structure.
diff --git a/core/api/src/main/java/org/onlab/onos/store/Timestamped.java b/core/api/src/main/java/org/onlab/onos/net/device/Timestamped.java
similarity index 97%
rename from core/api/src/main/java/org/onlab/onos/store/Timestamped.java
rename to core/api/src/main/java/org/onlab/onos/net/device/Timestamped.java
index 9de7b0d..9d3549a 100644
--- a/core/api/src/main/java/org/onlab/onos/store/Timestamped.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/Timestamped.java
@@ -1,4 +1,4 @@
-package org.onlab.onos.store;
+package org.onlab.onos.net.device;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/core/api/src/main/java/org/onlab/onos/store/VersionedValue.java b/core/api/src/main/java/org/onlab/onos/net/device/VersionedValue.java
similarity index 97%
rename from core/api/src/main/java/org/onlab/onos/store/VersionedValue.java
rename to core/api/src/main/java/org/onlab/onos/net/device/VersionedValue.java
index 70602f6..f0233ef 100644
--- a/core/api/src/main/java/org/onlab/onos/store/VersionedValue.java
+++ b/core/api/src/main/java/org/onlab/onos/net/device/VersionedValue.java
@@ -1,4 +1,4 @@
-package org.onlab.onos.store;
+package org.onlab.onos.net.device;
import java.util.Objects;