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 byte
clearBit
(byte v, int position) Returns v, with the bit at position set to zero.static final int
clearBit
(int v, int position) static final long
clearBit
(long v, int position) static final short
clearBit
(short v, int position) static final int
decodeBigEndian
(byte[] buf) Decode a series of 4 bytes frombuf
, starting at position 0, and interpret them as an integer.static final int
decodeBigEndian
(byte[] buf, int offset) Decode a series of 4 bytes frombuf
, start atoffset
, and interpret them as an integer.static final void
encodeBigEndian
(int integer, byte[] buf) Encodeinteger
as a series of 4 bytes intobuf
starting at position 0 within that buffer.static final void
encodeBigEndian
(int integer, byte[] buf, int offset) Encodeinteger
as a series of 4 bytes intobuf
starting at positionoffset
.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.static final int
setBit
(int v, int position, boolean value) static final long
setBit
(long v, int position, boolean value) static final short
setBit
(short v, int position, boolean value) static final boolean
testBit
(byte v, int position) Bitfield utilities.static final boolean
testBit
(int v, int position) static final boolean
testBit
(long v, int position) static final boolean
testBit
(short v, int position)
-
Constructor Details
-
EncodingUtils
public EncodingUtils()
-
-
Method Details
-
encodeBigEndian
public static final void encodeBigEndian(int integer, byte[] buf) Encodeinteger
as a series of 4 bytes intobuf
starting 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) Encodeinteger
as a series of 4 bytes intobuf
starting at positionoffset
.- Parameters:
integer
- The integer to encode.buf
- The buffer to write to.offset
- The offset withinbuf
to 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 withbuf
to 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)
-