Send SystemName TLV in LLDP message.
[controller.git] / opendaylight / sal / api / src / main / java / org / opendaylight / controller / sal / packet / LLDP.java
index 562d03b7abe503088664c28d5ecb04bb546b1258..95edca943bc8a61681c34c582f4aeb9dddb7972e 100644 (file)
@@ -21,9 +21,10 @@ import org.opendaylight.controller.sal.utils.NetUtils;
 
 public class LLDP extends Packet {
     private static final String CHASSISID = "ChassisId";
+    private static final String SYSTEMNAMEID = "SystemNameID";
     private static final String PORTID = "PortId";
     private static final String TTL = "TTL";
-    private static final int LLDPDefaultTlvs = 3;
+    private static final int LLDPDefaultTlvs = 4;
     private static LLDPTLV emptyTLV = new LLDPTLV().setLength((short) 0)
             .setType((byte) 0);
     public static final byte[] LLDPMulticastMac = { 1, (byte) 0x80,
@@ -101,6 +102,22 @@ public class LLDP extends Packet {
         return this;
     }
 
+    /**
+     * @return the SystemName TLV
+     */
+    public LLDPTLV getSystemNameId() {
+        return getTLV(SYSTEMNAMEID);
+    }
+
+    /**
+     * @param LLDPTLV
+     *            - the chassisId to set
+     */
+    public LLDP setSystemNameId(LLDPTLV systemNameId) {
+        tlvList.put(getType(SYSTEMNAMEID), systemNameId);
+        return this;
+    }
+
     /**
      * @return LLDPTLV - the portId TLV
      */
@@ -223,7 +240,7 @@ public class LLDP extends Packet {
 
     /**
      * Returns the size of LLDP packet in bytes
-     * 
+     *
      * @return int - LLDP Packet size in bytes
      */
     private int getLLDPPacketLength() {