Fixed REST API bug in Xconnect

In addition,
- Deprecated old XConnectHandler
- Fixed equals() of XconnectDesc and XconnectKey
- Implemented unit tests for XconnectCodec

Change-Id: I1b5f2c1f389523e3b65a3d9acaf75bc06e39fdda
diff --git a/app/src/main/java/org/onosproject/segmentrouting/xconnect/api/XconnectCodec.java b/app/src/main/java/org/onosproject/segmentrouting/xconnect/api/XconnectCodec.java
index 1154e40..83421bc 100644
--- a/app/src/main/java/org/onosproject/segmentrouting/xconnect/api/XconnectCodec.java
+++ b/app/src/main/java/org/onosproject/segmentrouting/xconnect/api/XconnectCodec.java
@@ -32,9 +32,9 @@
  * Codec for Xconnect.
  */
 public class XconnectCodec extends JsonCodec<XconnectDesc> {
-    private static final String DEVICE_ID = "deviceId";
-    private static final String VLAN_ID = "vlanId";
-    private static final String ENDPOINTS = "endpoints";
+    static final String DEVICE_ID = "deviceId";
+    static final String VLAN_ID = "vlanId";
+    static final String ENDPOINTS = "endpoints";
 
     private static Logger log = LoggerFactory.getLogger(XconnectCodec.class);
 
@@ -42,7 +42,7 @@
     public ObjectNode encode(XconnectDesc desc, CodecContext context) {
         final ObjectNode result = context.mapper().createObjectNode();
         result.put(DEVICE_ID, desc.key().deviceId().toString());
-        result.put(VLAN_ID, desc.key().vlanId().toString());
+        result.put(VLAN_ID, desc.key().vlanId().toShort());
         final ArrayNode portNode = result.putArray(ENDPOINTS);
         desc.endpoints().forEach(endpoint -> portNode.add(endpoint.toString()));
 
@@ -57,8 +57,7 @@
         Set<XconnectEndpoint> endpoints = Sets.newHashSet();
         JsonNode endpointNodes = json.get(ENDPOINTS);
         if (endpointNodes != null) {
-            XconnectEndpoint endpoint = XconnectEndpoint.fromString(endpointNodes.asText());
-            endpointNodes.forEach(endpointNode -> endpoints.add(endpoint));
+            endpointNodes.forEach(endpointNode -> endpoints.add(XconnectEndpoint.fromString(endpointNode.asText())));
         }
 
         XconnectKey key = new XconnectKey(deviceId, vlanId);