[VOL-4617] - Update Sadis with nniDhcpTrapVid and doc for interpretation of UniTagInformation attributes for FTTB

Change-Id: Ie766d05d6d4d4d2f11fc7e3b18f1f045e8c6b83f
diff --git a/api/src/main/java/org/opencord/sadis/SubscriberAndDeviceInformation.java b/api/src/main/java/org/opencord/sadis/SubscriberAndDeviceInformation.java
index 08ab94e..350f3d5 100644
--- a/api/src/main/java/org/opencord/sadis/SubscriberAndDeviceInformation.java
+++ b/api/src/main/java/org/opencord/sadis/SubscriberAndDeviceInformation.java
@@ -17,9 +17,12 @@
 
 import org.onlab.packet.Ip4Address;
 import org.onlab.packet.MacAddress;
+import org.onlab.packet.VlanId;
+
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 import java.util.List;
+import java.util.Objects;
 
 /**
  * Represents a unit of information about a subscriber or access device.
@@ -50,6 +53,9 @@
     @JsonProperty(value = "remoteId")
     String remoteId;
 
+    @JsonProperty(value = "nniDhcpTrapVid")
+    VlanId nniDhcpTrapVid = VlanId.vlanId(VlanId.NO_VID);
+
     @JsonProperty(value = "uniTagList")
     List<UniTagInformation> uniTagList;
 
@@ -120,6 +126,14 @@
         this.remoteId = remoteId;
     }
 
+    public final VlanId nniDhcpTrapVid() {
+        return this.nniDhcpTrapVid;
+    }
+
+    public final void setNniDhcpTrapVid(final VlanId vid) {
+        this.nniDhcpTrapVid = vid;
+    }
+
     public final List<UniTagInformation> uniTagList() {
         return this.uniTagList;
     }
@@ -148,6 +162,7 @@
         result = prime + result + (this.circuitId == null ? 0 : this.circuitId.hashCode());
         result = prime + result + (this.remoteId == null ? 0 : this.remoteId.hashCode());
         result = prime + result + (this.uniTagList == null ? 0 : this.uniTagList.hashCode());
+        result = prime + result + (this.nniDhcpTrapVid != null ? this.nniDhcpTrapVid.hashCode() : 0);
         return result;
     }
 
@@ -232,6 +247,9 @@
         } else if (!this.uniTagList.equals(other.uniTagList)) {
             return false;
         }
+        if (!Objects.equals(this.nniDhcpTrapVid, other.nniDhcpTrapVid)) {
+            return false;
+        }
         return true;
     }
 
@@ -253,6 +271,7 @@
         buf.append(",nasId:").append(this.nasId);
         buf.append(",circuitId:").append(this.circuitId);
         buf.append(",remoteId:").append(this.remoteId);
+        buf.append(",nniDhcpTrapVid:").append(this.nniDhcpTrapVid);
         buf.append(",uniTagList:").append(this.uniTagList);
         buf.append(']');