REST/CLI Implementations and Fix for remote url data

Change-Id: I0daeebdd40864179c6b923bed3da0c38f259829e
diff --git a/app/src/main/java/org/opencord/sadis/impl/SadisManager.java b/app/src/main/java/org/opencord/sadis/impl/SadisManager.java
index 1297235..f8e4de8 100644
--- a/app/src/main/java/org/opencord/sadis/impl/SadisManager.java
+++ b/app/src/main/java/org/opencord/sadis/impl/SadisManager.java
@@ -31,6 +31,8 @@
 import org.onosproject.net.config.NetworkConfigEvent;
 import org.onosproject.net.config.NetworkConfigListener;
 import org.onosproject.net.config.NetworkConfigRegistry;
+import org.onosproject.codec.CodecService;
+import org.opencord.sadis.SubscriberAndDeviceInformation;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -57,6 +59,9 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
     protected NetworkConfigRegistry cfgService;
 
+    @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+    protected CodecService codecService;
+
     @SuppressWarnings("rawtypes")
     private final Set<ConfigFactory> factories = ImmutableSet
             .of(new ConfigFactory<ApplicationId, SadisConfig>(APP_SUBJECT_FACTORY, SadisConfig.class, "sadis") {
@@ -73,6 +78,7 @@
     protected void activate() {
 
         this.appId = this.coreService.registerApplication(SADIS_APP);
+        codecService.registerCodec(SubscriberAndDeviceInformation.class, new SubscriberAndDeviceInformationCodec());
         this.cfgService.addListener(this.cfgListener);
         this.factories.forEach(this.cfgService::registerConfigFactory);
         this.updateConfig();