public NshMdType2AugmentBuilder(NshMdType2Augment base) { this._md2Data = base.getMd2Data(); }
@Override public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof DataObject)) { return false; } if (!NshMdType2Augment.class.equals(((DataObject)obj).getImplementedInterface())) { return false; } NshMdType2Augment other = (NshMdType2Augment)obj; if (!Objects.equals(_md2Data, other.getMd2Data())) { return false; } return true; }
private void getNshEntryMdType2Request(@Nonnull final NshEntry entry, @Nonnull NshAddDelEntry request) { final List<Md2Data> md2Datas = entry.augmentation(NshMdType2Augment.class).getMd2Data(); final byte md2_len = (byte) (entry.getLength() * 4 - 8); byte cur_len = 0; byte option_len; LOG.debug("wr: md2_len={}", md2_len); request.tlv = new byte[md2_len]; for (Md2Data md2data : md2Datas) { option_len = (byte) md2data.getLen().shortValue(); LOG.debug("wr: option_len={}", option_len); if ((cur_len + option_len + 4) <= md2_len) { request.tlv[cur_len] = (byte) (md2data.getMd2Class().shortValue() >> 8); request.tlv[cur_len + 1] = (byte) (md2data.getMd2Class().shortValue() & 0xF); request.tlv[cur_len + 2] = (byte) md2data.getType().shortValue(); request.tlv[cur_len + 3] = option_len; /* convert string to hex digits */ LOG.debug("wr: md2data.getMetadata()={}", md2data.getMetadata()); int length = md2data.getMetadata().length(); for (int i = 0; i < length / 2; ++i) { request.tlv[(cur_len+4)+i] = (byte)(Integer.parseInt (md2data.getMetadata().substring(i*2, i*2+2), 16) & 0xff); } cur_len += (option_len + 4); } } request.tlvLength = cur_len; }