* Utility class for ByteBuf's write methods.
*/
public final class ByteBufWriteUtil {
- public static final int IPV4_PREFIX_BYTE_LENGTH = Ipv4Util.IP4_LENGTH + 1;
- public static final int IPV6_PREFIX_BYTE_LENGTH = Ipv6Util.IPV6_LENGTH + 1;
-
private ByteBufWriteUtil() {
// Hidden on purpose
}
if (ipv4Prefix != null) {
output.writeBytes(Ipv4Util.bytesForPrefix(ipv4Prefix));
} else {
- output.writeZero(IPV4_PREFIX_BYTE_LENGTH);
+ output.writeZero(Ipv4Util.PREFIX_BYTE_LENGTH);
}
}
if (ipv6Prefix != null) {
output.writeBytes(Ipv6Util.bytesForPrefix(ipv6Prefix));
} else {
- output.writeZero(IPV6_PREFIX_BYTE_LENGTH);
+ output.writeZero(Ipv6Util.PREFIX_BYTE_LENGTH);
}
}
public final class Ipv4Util {
public static final int IP4_LENGTH = 4;
public static final int IP4_BITS_LENGTH = 32;
+
+ static final int PREFIX_BYTE_LENGTH = IP4_LENGTH + 1;
+
private static final Ipv4Prefix EMPTY_PREFIX = new Ipv4Prefix("0.0.0.0/0");
private Ipv4Util() {
public final class Ipv6Util {
public static final int IPV6_LENGTH = 16;
public static final int IPV6_BITS_LENGTH = 128;
+
+ static final int PREFIX_BYTE_LENGTH = IPV6_LENGTH + 1;
+
private static final Ipv6Prefix EMPTY_PREFIX = new Ipv6Prefix("::/0");
private Ipv6Util() {
@Test
public void testWriteIpv4Prefix() {
final byte[] result = { 123, 122, 4, 5, 8 };
- final ByteBuf output = Unpooled.buffer(ByteBufWriteUtil.IPV4_PREFIX_BYTE_LENGTH);
+ final ByteBuf output = Unpooled.buffer(Ipv4Util.PREFIX_BYTE_LENGTH);
writeIpv4Prefix(new Ipv4Prefix("123.122.4.5/8"), output);
assertArrayEquals(result, output.array());
public void testWriteIpv6Prefix() {
final byte[] result = { 0x20, (byte) 0x01, 0x0d, (byte) 0xb8, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40 };
- final ByteBuf output = Unpooled.buffer(ByteBufWriteUtil.IPV6_PREFIX_BYTE_LENGTH);
+ final ByteBuf output = Unpooled.buffer(Ipv6Util.PREFIX_BYTE_LENGTH);
writeIpv6Prefix(new Ipv6Prefix("2001:db8:1:2::/64"), output);
assertArrayEquals(result, output.array());