Package org.apache.thrift
Class EncodingUtils
java.lang.Object
org.apache.thrift.EncodingUtils
Utility methods for use when encoding/decoding raw data as byte arrays.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final byteclearBit(byte v, int position) Returns v, with the bit at position set to zero.static final intclearBit(int v, int position) static final longclearBit(long v, int position) static final shortclearBit(short v, int position) static final intdecodeBigEndian(byte[] buf) Decode a series of 4 bytes frombuf, starting at position 0, and interpret them as an integer.static final intdecodeBigEndian(byte[] buf, int offset) Decode a series of 4 bytes frombuf, start atoffset, and interpret them as an integer.static final voidencodeBigEndian(int integer, byte[] buf) Encodeintegeras a series of 4 bytes intobufstarting at position 0 within that buffer.static final voidencodeBigEndian(int integer, byte[] buf, int offset) Encodeintegeras a series of 4 bytes intobufstarting at positionoffset.static final bytesetBit(byte v, int position, boolean value) Returns v, with the bit at position set to 1 or 0 depending on value.static final intsetBit(int v, int position, boolean value) static final longsetBit(long v, int position, boolean value) static final shortsetBit(short v, int position, boolean value) static final booleantestBit(byte v, int position) Bitfield utilities.static final booleantestBit(int v, int position) static final booleantestBit(long v, int position) static final booleantestBit(short v, int position)
-
Constructor Details
-
EncodingUtils
public EncodingUtils()
-
-
Method Details
-
encodeBigEndian
public static final void encodeBigEndian(int integer, byte[] buf) Encodeintegeras a series of 4 bytes intobufstarting at position 0 within that buffer.- Parameters:
integer- The integer to encode.buf- The buffer to write to.
-
encodeBigEndian
public static final void encodeBigEndian(int integer, byte[] buf, int offset) Encodeintegeras a series of 4 bytes intobufstarting at positionoffset.- Parameters:
integer- The integer to encode.buf- The buffer to write to.offset- The offset withinbufto start the encoding.
-
decodeBigEndian
public static final int decodeBigEndian(byte[] buf) Decode a series of 4 bytes frombuf, starting at position 0, and interpret them as an integer.- Parameters:
buf- The buffer to read from.- Returns:
- An integer, as read from the buffer.
-
decodeBigEndian
public static final int decodeBigEndian(byte[] buf, int offset) Decode a series of 4 bytes frombuf, start atoffset, and interpret them as an integer.- Parameters:
buf- The buffer to read from.offset- The offset withbufto start the decoding.- Returns:
- An integer, as read from the buffer.
-
testBit
public static final boolean testBit(byte v, int position) Bitfield utilities. Returns true if the bit at position is set in v.- Parameters:
v- the value whose bit is to be checked.position- the 0 based bit number indicating the bit to check.- Returns:
- true if the bit at position is set in v.
-
testBit
public static final boolean testBit(short v, int position) -
testBit
public static final boolean testBit(int v, int position) -
testBit
public static final boolean testBit(long v, int position) -
clearBit
public static final byte clearBit(byte v, int position) Returns v, with the bit at position set to zero.- Parameters:
v- the value whose bit is to be cleared.position- the 0 based bit number indicating the bit to clear.- Returns:
- v, with the bit at position set to zero.
-
clearBit
public static final short clearBit(short v, int position) -
clearBit
public static final int clearBit(int v, int position) -
clearBit
public static final long clearBit(long v, int position) -
setBit
public static final byte setBit(byte v, int position, boolean value) Returns v, with the bit at position set to 1 or 0 depending on value.- Parameters:
v- the value whose bit is to be set.position- the 0 based bit number indicating the bit to set.value- if true, the given bit is set to 1; otherwise it is set to 0.- Returns:
- v, with the bit at position set to 0 (if value is false) or 1 (if value is true).
-
setBit
public static final short setBit(short v, int position, boolean value) -
setBit
public static final int setBit(int v, int position, boolean value) -
setBit
public static final long setBit(long v, int position, boolean value)
-