REST interface for VPLS application

Change-Id: I2cab5bd6ff0ce026d0ef844bba6199fdd7f3e50d
This repository contains the files that provide a REST interface for VPLS
application.I create a new package in org.onosproject.vpls
called rest that contains the java classes VplsWebApplication and
VplsWebResource. The VplsWebResource provides create/update/read/delete
(CURD) functionality, leveraging the methods defined in the Vpls java
interface. I create a new folder called resources that contains
the json definitions and the files for the "web page".
diff --git a/apps/vpls/src/main/java/org/onosproject/vpls/VplsManager.java b/apps/vpls/src/main/java/org/onosproject/vpls/VplsManager.java
index 425f77d..293f92b 100644
--- a/apps/vpls/src/main/java/org/onosproject/vpls/VplsManager.java
+++ b/apps/vpls/src/main/java/org/onosproject/vpls/VplsManager.java
@@ -16,6 +16,7 @@
 package org.onosproject.vpls;
 
 import com.google.common.collect.ImmutableSet;
+import org.onosproject.codec.CodecService;
 import org.onosproject.net.EncapsulationType;
 import org.onosproject.net.Host;
 import org.onosproject.net.host.HostEvent;
@@ -29,6 +30,7 @@
 import org.onosproject.vpls.api.VplsOperation;
 import org.onosproject.vpls.api.VplsOperationService;
 import org.onosproject.vpls.api.VplsStore;
+import org.onosproject.vpls.rest.VplsCodec;
 import org.onosproject.vpls.store.VplsStoreEvent;
 import org.osgi.service.component.annotations.Activate;
 import org.osgi.service.component.annotations.Component;
@@ -65,9 +67,13 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected VplsOperationService operationService;
 
+    @Reference(cardinality = ReferenceCardinality.MANDATORY)
+    protected CodecService codecService;
+
     private StoreDelegate<VplsStoreEvent> vplsStoreDelegate;
     private HostListener vplsHostListener;
 
+
     @Activate
     public void activate() {
         vplsStoreDelegate = new VplsStoreDelegate();
@@ -75,12 +81,14 @@
 
         vplsStore.setDelegate(vplsStoreDelegate);
         hostService.addListener(vplsHostListener);
+        codecService.registerCodec(VplsData.class, new VplsCodec());
     }
 
     @Deactivate
     public void deactivate() {
         vplsStore.unsetDelegate(vplsStoreDelegate);
         hostService.removeListener(vplsHostListener);
+        codecService.unregisterCodec(VplsData.class);
     }
 
     @Override