public void setTimestamp(long timestamp) { LLDPOrganizationalTLV tmtlv = opttlvs.get(TIMESTAMP_SUBTYPE); if (tmtlv == null) { return; } tmtlv.setInfoString(ByteBuffer.allocate(8).putLong(timestamp).array()); tmtlv.setLength((short) (8 + TIMESTAMP_LENGTH)); tmtlv.setSubType(TIMESTAMP_SUBTYPE); tmtlv.setOUI(MacAddress.ONOS.oui()); }
public void setName(String name) { LLDPOrganizationalTLV nametlv = opttlvs.get(NAME_SUBTYPE); nametlv.setLength((short) (name.length() + NAME_LENGTH)); nametlv.setInfoString(name); nametlv.setSubType(NAME_SUBTYPE); nametlv.setOUI(MacAddress.ONOS.oui()); }
public void setDomainInfo(String domainId) { LLDPOrganizationalTLV domaintlv = opttlvs.get(DOMAIN_SUBTYPE); if (domaintlv == null) { // maybe warn people not to set this if remote probes aren't. return; } domaintlv.setInfoString(domainId); domaintlv.setLength((short) (domainId.length() + DOMAIN_LENGTH)); domaintlv.setSubType(DOMAIN_SUBTYPE); domaintlv.setOUI(MacAddress.ONOS.oui()); }
public void setDevice(String device) { LLDPOrganizationalTLV devicetlv = opttlvs.get(DEVICE_SUBTYPE); devicetlv.setInfoString(device); devicetlv.setLength((short) (device.length() + DEVICE_LENGTH)); devicetlv.setSubType(DEVICE_SUBTYPE); devicetlv.setOUI(MacAddress.ONOS.oui()); }
public void setSig(byte[] sig) { LLDPOrganizationalTLV sigtlv = opttlvs.get(SIG_SUBTYPE); if (sigtlv == null) { return; } sigtlv.setInfoString(sig); sigtlv.setLength((short) (sig.length + SIG_LENGTH)); sigtlv.setSubType(SIG_SUBTYPE); sigtlv.setOUI(MacAddress.ONOS.oui()); }
@Override public LLDPTLV deserialize(final ByteBuffer bb) throws DeserializationException { super.deserialize(bb); if (this.getType() != LLDPOrganizationalTLV.ORGANIZATIONAL_TLV_TYPE) { return this; } if (this.getLength() <= OUI_LENGTH + SUBTYPE_LENGTH) { throw new DeserializationException( "TLV length is less than required for organizational TLV"); } final ByteBuffer optionalField = ByteBuffer.wrap(this.value); final byte[] oui = new byte[LLDPOrganizationalTLV.OUI_LENGTH]; optionalField.get(oui); this.setOUI(oui); this.setSubType(optionalField.get()); final byte[] infoString = new byte[this.getLength() - LLDPOrganizationalTLV.OUI_LENGTH - LLDPOrganizationalTLV.SUBTYPE_LENGTH]; optionalField.get(infoString); this.setInfoString(infoString); return this; }