@Override public UnknownIpV6Option build() { return new UnknownIpV6Option(this); } }
@Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("[Option Type: ") .append(type) .append("] [Option Data Len: ") .append(getDataLenAsInt()) .append(" bytes] [Option Data: 0x") .append(ByteArrays.toHexString(data, "")) .append("]"); return sb.toString(); }
@Override public byte[] getRawData() { byte[] rawData = new byte[length()]; rawData[0] = type.value(); rawData[1] = dataLen; System.arraycopy(data, 0, rawData, 2, data.length); return rawData; }
@Override public IpV6Option newInstance(byte[] rawData, int offset, int length) { try { return UnknownIpV6Option.newInstance(rawData, offset, length); } catch (IllegalRawDataException e) { return IllegalIpV6Option.newInstance(rawData, offset, length); } }
@Override public IpV6Option newInstance(byte[] rawData, int offset, int length) { try { return UnknownIpV6Option.newInstance(rawData, offset, length); } catch (IllegalRawDataException e) { return IllegalIpV6Option.newInstance(rawData, offset, length); } }
/** * A static factory method. This method validates the arguments by {@link * ByteArrays#validateBounds(byte[], int, int)}, which may throw exceptions undocumented here. * * @param rawData rawData * @param offset offset * @param length length * @return a new UnknownIpV6Option object. * @throws IllegalRawDataException if parsing the raw data fails. */ public static UnknownIpV6Option newInstance(byte[] rawData, int offset, int length) throws IllegalRawDataException { ByteArrays.validateBounds(rawData, offset, length); return new UnknownIpV6Option(rawData, offset, length); }
@Override public byte[] getRawData() { byte[] rawData = new byte[length()]; rawData[0] = type.value(); rawData[1] = dataLen; System.arraycopy(data, 0, rawData, 2, data.length); return rawData; }
@Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("[Option Type: ") .append(type) .append("] [Option Data Len: ") .append(getDataLenAsInt()) .append(" bytes] [Option Data: 0x") .append(ByteArrays.toHexString(data, "")) .append("]"); return sb.toString(); }
@Override public UnknownIpV6Option build() { return new UnknownIpV6Option(this); } }
/** * A static factory method. This method validates the arguments by {@link * ByteArrays#validateBounds(byte[], int, int)}, which may throw exceptions undocumented here. * * @param rawData rawData * @param offset offset * @param length length * @return a new UnknownIpV6Option object. * @throws IllegalRawDataException if parsing the raw data fails. */ public static UnknownIpV6Option newInstance(byte[] rawData, int offset, int length) throws IllegalRawDataException { ByteArrays.validateBounds(rawData, offset, length); return new UnknownIpV6Option(rawData, offset, length); }