ONOS-3655 - This Device key subsystem update adds the implementation of the
DeviceKeyManager and the distributed device key store.
Change-Id: I32544040590b31a59e20f3375fca453a117f940c
diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyId.java b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyId.java
index 2ec5c60..a4bdac7 100644
--- a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyId.java
+++ b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyId.java
@@ -48,7 +48,7 @@
* @param id for the device key identifier
* @return device key identifier
*/
- static final DeviceKeyId deviceKeyId(String id) {
+ public static final DeviceKeyId deviceKeyId(String id) {
return new DeviceKeyId(id);
}
diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyService.java b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyService.java
index 0372359..b869aeb 100644
--- a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyService.java
+++ b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyService.java
@@ -17,26 +17,29 @@
package org.onosproject.incubator.net.key;
import com.google.common.annotations.Beta;
+import org.onosproject.event.ListenerService;
+
+import java.util.Collection;
/**
* Service for querying device keys.
*/
@Beta
-public interface DeviceKeyService {
+public interface DeviceKeyService extends ListenerService<DeviceKeyEvent, DeviceKeyListener> {
/**
* Returns all device keys.
*
- * @return collection of device keys
+ * @return Collection of device keys
*/
- Iterable<DeviceKey> getDeviceKeys();
+ Collection<DeviceKey> getDeviceKeys();
/**
- * Returns the device key(s) using a device key identifier.
+ * Returns the device key using a device key identifier.
*
- * @param id device key identifier
- * @return collection of device keys
+ * @param deviceKeyId device key identifier
+ * @return device key
*/
- Iterable<DeviceKey> getDeviceKey(DeviceKeyId id);
+ DeviceKey getDeviceKey(DeviceKeyId deviceKeyId);
}
diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyStore.java b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyStore.java
index f25b662..d25c28f 100644
--- a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyStore.java
+++ b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKeyStore.java
@@ -19,6 +19,8 @@
import com.google.common.annotations.Beta;
import org.onosproject.store.Store;
+import java.util.Collection;
+
/**
* Manages inventory of device keys; not intended for direct use.
*/
@@ -28,15 +30,28 @@
* Creates or updates a device key.
*
* @param deviceKey device key
- * @return device key event
*/
- DeviceKeyEvent createOrUpdateDeviceKey(DeviceKey deviceKey);
+ void createOrUpdateDeviceKey(DeviceKey deviceKey);
/**
* Deletes a device key by a specific device key identifier.
*
* @param deviceKeyId device key unique identifier
- * @return device key event
*/
- DeviceKeyEvent deleteDeviceKey(DeviceKeyId deviceKeyId);
+ void deleteDeviceKey(DeviceKeyId deviceKeyId);
+
+ /**
+ * Returns all device keys.
+ *
+ * @return set of device keys
+ */
+ Collection<DeviceKey> getDeviceKeys();
+
+ /**
+ * Returns the device key matching a device key identifier.
+ *
+ * @param deviceKeyId device key unique identifier
+ * @return device key
+ */
+ DeviceKey getDeviceKey(DeviceKeyId deviceKeyId);
}