ONOS-3658 - Adding CLI commands to display and manage Device Keys.
Change-Id: I98d7d3b7bc9a61f106a6b79b38d7ddaebbfb3288
diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKey.java b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKey.java
index a9f0f5f..012636d 100644
--- a/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKey.java
+++ b/incubator/api/src/main/java/org/onosproject/incubator/net/key/DeviceKey.java
@@ -40,7 +40,7 @@
/**
* type of the device key.
*/
- enum Type {
+ public enum Type {
COMMUNITY_NAME, USERNAME_PASSWORD, SSL_KEY
}
diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/key/impl/DeviceKeyManager.java b/incubator/net/src/main/java/org/onosproject/incubator/net/key/impl/DeviceKeyManager.java
index 91d1364..d650732 100644
--- a/incubator/net/src/main/java/org/onosproject/incubator/net/key/impl/DeviceKeyManager.java
+++ b/incubator/net/src/main/java/org/onosproject/incubator/net/key/impl/DeviceKeyManager.java
@@ -17,9 +17,11 @@
package org.onosproject.incubator.net.key.impl;
import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Deactivate;
import org.apache.felix.scr.annotations.Reference;
import org.apache.felix.scr.annotations.ReferenceCardinality;
+import org.apache.felix.scr.annotations.Service;
import org.onosproject.event.AbstractListenerManager;
import org.onosproject.incubator.net.key.DeviceKey;
import org.onosproject.incubator.net.key.DeviceKeyAdminService;
@@ -42,14 +44,13 @@
/**
* Implementation of device key services.
*/
+@Component(immediate = true, enabled = true)
+@Service
public class DeviceKeyManager extends AbstractListenerManager<DeviceKeyEvent, DeviceKeyListener>
implements DeviceKeyService, DeviceKeyAdminService {
private final Logger log = getLogger(getClass());
- @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
- protected DeviceKeyService deviceKeyService;
-
private DeviceKeyStoreDelegate delegate = this::post;
@Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/key/impl/DistributedDeviceKeyStore.java b/incubator/store/src/main/java/org/onosproject/incubator/store/key/impl/DistributedDeviceKeyStore.java
index eaaf597..5c865f5 100644
--- a/incubator/store/src/main/java/org/onosproject/incubator/store/key/impl/DistributedDeviceKeyStore.java
+++ b/incubator/store/src/main/java/org/onosproject/incubator/store/key/impl/DistributedDeviceKeyStore.java
@@ -36,6 +36,7 @@
import org.onosproject.store.service.StorageService;
import org.slf4j.Logger;
+import java.util.Arrays;
import java.util.Collection;
import java.util.Map;
@@ -68,7 +69,10 @@
@Activate
public void activate() {
deviceKeys = storageService.<DeviceKeyId, DeviceKey>consistentMapBuilder()
- .withSerializer(Serializer.using(KryoNamespaces.API))
+ .withSerializer(Serializer.using(Arrays.asList(KryoNamespaces.API),
+ DeviceKey.class,
+ DeviceKeyId.class,
+ DeviceKey.Type.class))
.withName("onos-device-keys")
.withRelaxedReadConsistency()
.build();