aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java')
-rw-r--r--framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java41
1 files changed, 16 insertions, 25 deletions
diff --git a/framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java b/framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java
index fe9d7995..c56a4fcb 100644
--- a/framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java
+++ b/framework/src/onos/apps/vtn/vtnweb/src/test/java/org/onosproject/vtnweb/web/SfcCodecContext.java
@@ -15,15 +15,10 @@
*/
package org.onosproject.vtnweb.web;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
import org.onosproject.codec.CodecContext;
+import org.onosproject.codec.CodecService;
import org.onosproject.codec.JsonCodec;
-import org.onosproject.vtnrsc.FlowClassifier;
-import org.onosproject.vtnrsc.PortChain;
-import org.onosproject.vtnrsc.PortPair;
-import org.onosproject.vtnrsc.PortPairGroup;
+import org.onosproject.codec.impl.CodecManager;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -33,17 +28,16 @@ import com.fasterxml.jackson.databind.ObjectMapper;
public class SfcCodecContext implements CodecContext {
private final ObjectMapper mapper = new ObjectMapper();
- private final Map<Class<?>, JsonCodec> codecs = new ConcurrentHashMap<>();
+ private final CodecManager codecManager = new CodecManager();
+ private final VtnCodecRegistrator manager = new VtnCodecRegistrator();
/**
* Constructs a new mock codec context.
*/
public SfcCodecContext() {
- codecs.clear();
- registerCodec(PortPair.class, new PortPairCodec());
- registerCodec(PortChain.class, new PortChainCodec());
- registerCodec(PortPairGroup.class, new PortPairGroupCodec());
- registerCodec(FlowClassifier.class, new FlowClassifierCodec());
+ codecManager.activate();
+ manager.codecService = codecManager;
+ manager.activate();
}
@Override
@@ -58,20 +52,17 @@ public class SfcCodecContext implements CodecContext {
return null;
}
+ @Override
+ public <T> JsonCodec<T> codec(Class<T> entityClass) {
+ return codecManager.getCodec(entityClass);
+ }
+
/**
- * Registers the specified JSON codec for the given entity class.
+ * Get the codec manager.
*
- * @param entityClass entity class
- * @param codec JSON codec
- * @param <T> entity type
+ * @return instance of codec manager
*/
- public <T> void registerCodec(Class<T> entityClass, JsonCodec<T> codec) {
- codecs.putIfAbsent(entityClass, codec);
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public <T> JsonCodec<T> codec(Class<T> entityClass) {
- return codecs.get(entityClass);
+ public CodecService codecManager() {
+ return codecManager;
}
}