Package io.hekate.codec
Class CodecUtils
- java.lang.Object
-
- io.hekate.codec.CodecUtils
-
public final class CodecUtils extends Object
Utilities for data encoding/decoding.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static InetSocketAddress
readAddress(DataInput in)
ReadsInetSocketAddress
from the specified data input.static BigDecimal
readBigDecimal(DataInput in)
ReadsBigDecimal
value that was written viawriteBigDecimal(BigDecimal, DataOutput)
.static BigInteger
readBigInteger(DataInput in)
ReadsBigInteger
value that was written viawriteBigInteger(BigInteger, DataOutput)
.static ClusterAddress
readClusterAddress(DataInput in)
ReadsClusterAddress
from the specified data input.static ClusterNodeId
readNodeId(DataInput in)
ReadsClusterNodeId
from the specified data input.static ClusterHash
readTopologyHash(DataInput in)
ReadsClusterHash
from the specified data input.static int
readVarInt(DataInput in)
Reads a value that was encoded viawriteVarInt(int, DataOutput)
.static int
readVarIntUnsigned(DataInput in)
Reads a value that was encoded viawriteVarIntUnsigned(int, DataOutput)
.static long
readVarLong(DataInput in)
Reads a value that was encoded viawriteVarLong(long, DataOutput)
.static long
readVarLongUnsigned(DataInput in)
Reads a value that was encoded viawriteVarLongUnsigned(long, DataOutput)
.static void
writeAddress(InetSocketAddress address, DataOutput out)
WritesInetSocketAddress
to the specified data output.static void
writeBigDecimal(BigDecimal val, DataOutput out)
WritesBigDecimal
value.static void
writeBigInteger(BigInteger val, DataOutput out)
WritesBigInteger
value.static void
writeClusterAddress(ClusterAddress address, DataOutput out)
WritesClusterAddress
to the specified data output.static void
writeNodeId(ClusterNodeId id, DataOutput out)
WritesClusterNodeId
to the specified data output.static void
writeTopologyHash(ClusterHash hash, DataOutput out)
WritesClusterHash
to the specified data output.static void
writeVarInt(int value, DataOutput out)
Encodes a value using the variable-length encoding from Google Protocol Buffers.static void
writeVarIntUnsigned(int value, DataOutput out)
Encodes a value using the variable-length encoding from Google Protocol Buffers.static void
writeVarLong(long value, DataOutput out)
Encodes a value using the variable-length encoding from Google Protocol Buffers.static void
writeVarLongUnsigned(long value, DataOutput out)
Encodes a value using the variable-length encoding from Google Protocol Buffers.
-
-
-
Method Detail
-
writeClusterAddress
public static void writeClusterAddress(ClusterAddress address, DataOutput out) throws IOException
WritesClusterAddress
to the specified data output.- Parameters:
address
- Address to write.out
- Data output.- Throws:
IOException
- If write operation failed.- See Also:
readClusterAddress(DataInput)
-
readClusterAddress
public static ClusterAddress readClusterAddress(DataInput in) throws IOException
ReadsClusterAddress
from the specified data input.- Parameters:
in
- Data input.- Returns:
- Address.
- Throws:
IOException
- If read operation failed.- See Also:
writeClusterAddress(ClusterAddress, DataOutput)
-
writeAddress
public static void writeAddress(InetSocketAddress address, DataOutput out) throws IOException
WritesInetSocketAddress
to the specified data output.- Parameters:
address
- Address to write.out
- Data output.- Throws:
IOException
- If write operation failed.- See Also:
readAddress(DataInput)
-
readAddress
public static InetSocketAddress readAddress(DataInput in) throws IOException
ReadsInetSocketAddress
from the specified data input.- Parameters:
in
- Data input.- Returns:
- Address.
- Throws:
IOException
- If read operation failed.- See Also:
writeAddress(InetSocketAddress, DataOutput)
-
writeNodeId
public static void writeNodeId(ClusterNodeId id, DataOutput out) throws IOException
WritesClusterNodeId
to the specified data output.- Parameters:
id
- Node ID.out
- Data output.- Throws:
IOException
- If write operation failed.- See Also:
readNodeId(DataInput)
-
readNodeId
public static ClusterNodeId readNodeId(DataInput in) throws IOException
ReadsClusterNodeId
from the specified data input.- Parameters:
in
- Data input.- Returns:
- Node ID.
- Throws:
IOException
- If read operation failed.- See Also:
writeNodeId(ClusterNodeId, DataOutput)
-
writeTopologyHash
public static void writeTopologyHash(ClusterHash hash, DataOutput out) throws IOException
WritesClusterHash
to the specified data output.- Parameters:
hash
- Topology hash.out
- Data output.- Throws:
IOException
- If write operation failed.- See Also:
readTopologyHash(DataInput)
-
readTopologyHash
public static ClusterHash readTopologyHash(DataInput in) throws IOException
ReadsClusterHash
from the specified data input.- Parameters:
in
- Data input.- Returns:
- Topology hash.
- Throws:
IOException
- If read operation failed.- See Also:
writeTopologyHash(ClusterHash, DataOutput)
-
writeBigInteger
public static void writeBigInteger(BigInteger val, DataOutput out) throws IOException
WritesBigInteger
value. The written value can be read viareadBigInteger(DataInput)
.- Parameters:
val
- Value.out
- Data output.- Throws:
IOException
- if failed to write value.
-
readBigInteger
public static BigInteger readBigInteger(DataInput in) throws IOException
ReadsBigInteger
value that was written viawriteBigInteger(BigInteger, DataOutput)
.- Parameters:
in
- Data input.- Returns:
- Value.
- Throws:
IOException
- if failed to read value.
-
writeBigDecimal
public static void writeBigDecimal(BigDecimal val, DataOutput out) throws IOException
WritesBigDecimal
value. The written value can be read viareadBigDecimal(DataInput)
.- Parameters:
val
- Value.out
- Data output.- Throws:
IOException
- if failed to write value.
-
readBigDecimal
public static BigDecimal readBigDecimal(DataInput in) throws IOException
ReadsBigDecimal
value that was written viawriteBigDecimal(BigDecimal, DataOutput)
.- Parameters:
in
- Data input.- Returns:
- Value.
- Throws:
IOException
- if failed to read value.
-
writeVarLong
public static void writeVarLong(long value, DataOutput out) throws IOException
Encodes a value using the variable-length encoding from Google Protocol Buffers. It uses zig-zag encoding to efficiently encode signed values. If values are known to be non-negative,writeVarLongUnsigned(long, DataOutput)
should be used.- Parameters:
value
- Value to encodeout
- Data output.- Throws:
IOException
- if failed to write value.
-
writeVarLongUnsigned
public static void writeVarLongUnsigned(long value, DataOutput out) throws IOException
Encodes a value using the variable-length encoding from Google Protocol Buffers. Zig-zag is not used, so input must not be negative. If values can be negative, usewriteVarLong(long, DataOutput)
instead. This method treats negative input as like a large unsigned value.- Parameters:
value
- Value to encode (must be non-negative).out
- Data output.- Throws:
IOException
- if failed to write value.
-
writeVarInt
public static void writeVarInt(int value, DataOutput out) throws IOException
Encodes a value using the variable-length encoding from Google Protocol Buffers. It uses zig-zag encoding to efficiently encode signed values. If values are known to be non-negative,writeVarIntUnsigned(int, DataOutput)
should be used.- Parameters:
value
- Value to encodeout
- Data output.- Throws:
IOException
- if failed to write value.
-
writeVarIntUnsigned
public static void writeVarIntUnsigned(int value, DataOutput out) throws IOException
Encodes a value using the variable-length encoding from Google Protocol Buffers. Zig-zag is not used, so input must not be negative. If values can be negative, usewriteVarInt(int, DataOutput)
instead. This method treats negative input as like a large unsigned value.- Parameters:
value
- Value to encode (must be non-negative).out
- Data output.- Throws:
IOException
- if failed to write value.
-
readVarLong
public static long readVarLong(DataInput in) throws IOException
Reads a value that was encoded viawriteVarLong(long, DataOutput)
.- Parameters:
in
- Data input.- Returns:
- Value.
- Throws:
IOException
- if failed to read value.
-
readVarLongUnsigned
public static long readVarLongUnsigned(DataInput in) throws IOException
Reads a value that was encoded viawriteVarLongUnsigned(long, DataOutput)
.- Parameters:
in
- Data input.- Returns:
- Value.
- Throws:
IOException
- if failed to read value.
-
readVarInt
public static int readVarInt(DataInput in) throws IOException
Reads a value that was encoded viawriteVarInt(int, DataOutput)
.- Parameters:
in
- Data input.- Returns:
- Value.
- Throws:
IOException
- if failed to read value.
-
readVarIntUnsigned
public static int readVarIntUnsigned(DataInput in) throws IOException
Reads a value that was encoded viawriteVarIntUnsigned(int, DataOutput)
.- Parameters:
in
- Data input.- Returns:
- Value.
- Throws:
IOException
- if failed to read value.
-
-