Class ByteBufUtils
- java.lang.Object
-
- org.opendaylight.openflowjava.util.ByteBufUtils
-
public abstract class ByteBufUtils extends Object
Class for common operations on ByteBuf.- Author:
- michal.polkorab, timotej.kubas
-
-
Field Summary
Fields Modifier and Type Field Description static com.google.common.base.SplitterCOLON_SPLITTERstatic com.google.common.base.SplitterDOT_SPLITTER
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringbyteBufToHexString(io.netty.buffer.ByteBuf bb)Converts ByteBuf into String.static StringbytesToHexString(byte[] array)Converts byte array into String.static StringdecodeNullTerminatedString(io.netty.buffer.ByteBuf rawMessage, int length)Reads and parses null-terminated string from ByteBuf.static intfillBitMask(int offset, boolean... values)Fills the bitmask from a set of bit values, starting at specified offset.static int[]fillBitMaskFromList(List<Boolean> booleanList)Fills the bitmask from boolean list where key is bit position.static intfillBitMaskFromMap(Map<Integer,Boolean> booleanMap)Fills the bitmask from boolean map where key is bit position.static io.netty.buffer.ByteBufhexStringToByteBuf(String hexSrc)Creates ByteBuf filled with specified data.static voidhexStringToByteBuf(String hexSrc, io.netty.buffer.ByteBuf out)Creates ByteBuf filled with specified data.static byte[]hexStringToBytes(String hexSrc)Converts String into byte[].static byte[]hexStringToBytes(String hexSrc, boolean withSpaces)Converts String into byte[].static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4AddressreadIetfIpv4Address(io.netty.buffer.ByteBuf buf)static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6AddressreadIetfIpv6Address(io.netty.buffer.ByteBuf buf)static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddressreadIetfMacAddress(io.netty.buffer.ByteBuf buf)static byte[]serializeList(List<Short> list)static voidupdateOFHeaderLength(io.netty.buffer.ByteBuf out)Write length standard OF header.static voidupdateOFHeaderLength(io.netty.buffer.ByteBuf out, int index)Write length OF header.static <E extends OfHeader>
voidwriteOFHeader(byte msgType, E message, io.netty.buffer.ByteBuf out, int length)Create standard OF header.
-
-
-
Method Detail
-
byteBufToHexString
public static String byteBufToHexString(io.netty.buffer.ByteBuf bb)
Converts ByteBuf into String.- Parameters:
bb- input ByteBuf- Returns:
- String
-
hexStringToBytes
public static byte[] hexStringToBytes(String hexSrc)
Converts String into byte[].- Parameters:
hexSrc- input String- Returns:
- byte[] filled with input data
-
hexStringToBytes
public static byte[] hexStringToBytes(String hexSrc, boolean withSpaces)
Converts String into byte[].- Parameters:
hexSrc- input StringwithSpaces- if there are spaces in string- Returns:
- byte[] filled with input data
-
hexStringToByteBuf
public static io.netty.buffer.ByteBuf hexStringToByteBuf(String hexSrc)
Creates ByteBuf filled with specified data.- Parameters:
hexSrc- input String of bytes in hex format- Returns:
- ByteBuf with specified hexString converted
-
hexStringToByteBuf
public static void hexStringToByteBuf(String hexSrc, io.netty.buffer.ByteBuf out)
Creates ByteBuf filled with specified data.- Parameters:
hexSrc- input String of bytes in hex formatout- ByteBuf with specified hexString converted
-
writeOFHeader
public static <E extends OfHeader> void writeOFHeader(byte msgType, E message, io.netty.buffer.ByteBuf out, int length)
Create standard OF header.- Parameters:
msgType- message codemessage- POJOout- writing bufferlength- ofheader length
-
updateOFHeaderLength
public static void updateOFHeaderLength(io.netty.buffer.ByteBuf out)
Write length standard OF header.- Parameters:
out- writing buffer
-
updateOFHeaderLength
public static void updateOFHeaderLength(io.netty.buffer.ByteBuf out, int index)Write length OF header.- Parameters:
out- writing bufferindex- writing index
-
fillBitMaskFromMap
public static int fillBitMaskFromMap(Map<Integer,Boolean> booleanMap)
Fills the bitmask from boolean map where key is bit position.- Parameters:
booleanMap- bit to boolean mapping- Returns:
- bit mask
-
fillBitMask
public static int fillBitMask(int offset, boolean... values)Fills the bitmask from a set of bit values, starting at specified offset.- Parameters:
offset- Bit offset to start atvalues- boolean bit values to fill- Returns:
- Filled-in bitmask
-
fillBitMaskFromList
public static int[] fillBitMaskFromList(List<Boolean> booleanList)
Fills the bitmask from boolean list where key is bit position.- Parameters:
booleanList- bit to boolean mapping- Returns:
- bit mask
-
bytesToHexString
public static String bytesToHexString(byte[] array)
Converts byte array into String.- Parameters:
array- input byte array- Returns:
- String
-
decodeNullTerminatedString
public static String decodeNullTerminatedString(io.netty.buffer.ByteBuf rawMessage, int length)
Reads and parses null-terminated string from ByteBuf.- Parameters:
rawMessage- the message to parselength- maximal length of String- Returns:
- String with name of port
-
readIetfIpv4Address
public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address readIetfIpv4Address(io.netty.buffer.ByteBuf buf)
-
readIetfIpv6Address
public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Address readIetfIpv6Address(io.netty.buffer.ByteBuf buf)
-
readIetfMacAddress
public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress readIetfMacAddress(io.netty.buffer.ByteBuf buf)
-
-