Add configuration for default vlan

Change-Id: I183def6d1de3d10b2f53895f7fb7723df315379f
diff --git a/apps/olt/src/main/java/org/onosproject/olt/AccessDeviceConfig.java b/apps/olt/src/main/java/org/onosproject/olt/AccessDeviceConfig.java
index 90ed740..07b73c8 100644
--- a/apps/olt/src/main/java/org/onosproject/olt/AccessDeviceConfig.java
+++ b/apps/olt/src/main/java/org/onosproject/olt/AccessDeviceConfig.java
@@ -16,11 +16,14 @@
 
 package org.onosproject.olt;
 
+import com.fasterxml.jackson.databind.JsonNode;
 import org.onlab.packet.VlanId;
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.config.Config;
 
+import java.util.Optional;
+
 /**
  * Config object for access device data.
  */
@@ -28,6 +31,7 @@
 
     private static final String UPLINK = "uplink";
     private static final String VLAN = "vlan";
+    private static final String DEFAULT_VLAN = "defaultVlan";
 
     /**
      * Gets the access device configuration for this device.
@@ -37,7 +41,15 @@
     public AccessDeviceData getOlt() {
         PortNumber uplink = PortNumber.portNumber(node.path(UPLINK).asText());
         VlanId vlan = VlanId.vlanId(Short.parseShort(node.path(VLAN).asText()));
+        JsonNode defaultVlanNode = node.path(DEFAULT_VLAN);
 
-        return new AccessDeviceData(subject(), uplink, vlan);
+        Optional<VlanId> defaultVlan;
+        if (defaultVlanNode.isMissingNode()) {
+            defaultVlan = Optional.empty();
+        } else {
+            defaultVlan = Optional.of(VlanId.vlanId(Short.parseShort(defaultVlanNode.asText())));
+        }
+
+        return new AccessDeviceData(subject(), uplink, vlan, defaultVlan);
     }
 }