public class DataUtils extends Object
Modifier and Type | Class and Description |
---|---|
static class |
DataUtils.MapEntry<K,V>
An entry of a map.
|
Modifier and Type | Field and Description |
---|---|
static int |
COMPRESSED_VAR_INT_MAX
The maximum integer that needs less space when using variable size
encoding (only 3 bytes instead of 4).
|
static long |
COMPRESSED_VAR_LONG_MAX
The maximum long that needs less space when using variable size
encoding (only 7 bytes instead of 8).
|
static int |
ERROR_BLOCK_NOT_FOUND
The block in the stream store was not found.
|
static int |
ERROR_CHUNK_NOT_FOUND
The application was trying to read data from a chunk that is no longer
available.
|
static int |
ERROR_CLOSED
The object is already closed.
|
static int |
ERROR_FILE_CORRUPT
The file is corrupt or (for encrypted files) the encryption key is wrong.
|
static int |
ERROR_FILE_LOCKED
The file is locked.
|
static int |
ERROR_INTERNAL
An internal error occurred.
|
static int |
ERROR_READING_FAILED
An error occurred while reading from the file.
|
static int |
ERROR_SERIALIZATION
An error occurred when serializing or de-serializing.
|
static int |
ERROR_TOO_MANY_OPEN_TRANSACTIONS
There are too many open transactions.
|
static int |
ERROR_TRANSACTION_CORRUPT
The transaction store is corrupt.
|
static int |
ERROR_TRANSACTION_ILLEGAL_STATE
The transaction store is in an illegal state (for example, not yet
initialized).
|
static int |
ERROR_TRANSACTION_LOCKED
An entry is still locked by another transaction.
|
static int |
ERROR_UNSUPPORTED_FORMAT
The file format is not supported.
|
static int |
ERROR_WRITING_FAILED
An error occurred when trying to write to the file.
|
static Charset |
LATIN
The ISO Latin character encoding format.
|
static int |
MAX_VAR_INT_LEN
The maximum length of a variable size int.
|
static int |
MAX_VAR_LONG_LEN
The maximum length of a variable size long.
|
static int |
PAGE_COMPRESSED
The bit mask for compressed pages (compression level fast).
|
static int |
PAGE_COMPRESSED_HIGH
The bit mask for compressed pages (compression level high).
|
static int |
PAGE_LARGE
The marker size of a very large page.
|
static int |
PAGE_MEMORY
The estimated number of bytes used per page object.
|
static int |
PAGE_MEMORY_CHILD
The estimated number of bytes used per child entry.
|
static int |
PAGE_TYPE_LEAF
The type for leaf page.
|
static int |
PAGE_TYPE_NODE
The type for node page.
|
static Charset |
UTF8
The UTF-8 character encoding format.
|
Constructor and Description |
---|
DataUtils() |
Modifier and Type | Method and Description |
---|---|
static StringBuilder |
appendMap(StringBuilder buff,
HashMap<String,?> map)
Append a map to the string builder, sorted by key.
|
static void |
appendMap(StringBuilder buff,
String key,
Object value)
Append a key-value pair to the string builder.
|
static void |
checkArgument(boolean test,
String message,
Object... arguments)
Throw an IllegalArgumentException if the argument is invalid.
|
static void |
copyExcept(Object src,
Object dst,
int oldSize,
int removeIndex)
Copy the elements of an array, and remove one element.
|
static void |
copyWithGap(Object src,
Object dst,
int oldSize,
int gapIndex)
Copy the elements of an array, with a gap.
|
static int |
encodeLength(int len)
Convert the length to a length code 0..31.
|
static String |
formatMessage(int errorCode,
String message,
Object... arguments)
Format an error message.
|
static short |
getCheckValue(int x)
Calculate a check value for the given integer.
|
static int |
getErrorCode(String m)
Get the error code from an exception message.
|
static int |
getFletcher32(byte[] bytes,
int length)
Calculate the Fletcher32 checksum.
|
static int |
getPageChunkId(long pos)
Get the chunk id from the position.
|
static int |
getPageMaxLength(long pos)
Get the maximum length for the given code.
|
static int |
getPageOffset(long pos)
Get the offset from the position.
|
static long |
getPagePos(int chunkId,
int offset,
int length,
int type)
Get the position of this page.
|
static int |
getPageType(long pos)
Get the page type from the position.
|
static int |
getVarIntLen(int x)
Get the length of the variable size int.
|
static int |
getVarLongLen(long x)
Get the length of the variable size long.
|
static byte[] |
newBytes(int len)
Create an array of bytes with the given size.
|
static ConcurrentModificationException |
newConcurrentModificationException(String message)
Create a new ConcurrentModificationException.
|
static IllegalArgumentException |
newIllegalArgumentException(String message,
Object... arguments)
Create a new IllegalArgumentException.
|
static IllegalStateException |
newIllegalStateException(int errorCode,
String message,
Object... arguments)
Create a new IllegalStateException.
|
static UnsupportedOperationException |
newUnsupportedOperationException(String message)
Create a new UnsupportedOperationException.
|
static int |
parseHexInt(String x)
Parse an unsigned, hex long.
|
static long |
parseHexLong(String x)
Parse an unsigned, hex long.
|
static HashMap<String,String> |
parseMap(String s)
Parse a key-value pair list.
|
static void |
readFully(FileChannel file,
long pos,
ByteBuffer dst)
Read from a file channel until the buffer is full.
|
static int |
readHexInt(HashMap<String,? extends Object> map,
String key,
int defaultValue)
Read a hex int value from a map.
|
static long |
readHexLong(Map<String,? extends Object> map,
String key,
long defaultValue)
Read a hex long value from a map.
|
static String |
readString(ByteBuffer buff,
int len)
Read a string.
|
static int |
readVarInt(ByteBuffer buff)
Read a variable size int.
|
static long |
readVarLong(ByteBuffer buff)
Read a variable size long.
|
static void |
writeFully(FileChannel file,
long pos,
ByteBuffer src)
Write to a file channel.
|
static void |
writeStringData(ByteBuffer buff,
String s,
int len)
Write characters from a string (without the length).
|
static void |
writeVarInt(ByteBuffer buff,
int x)
Write a variable size int.
|
static void |
writeVarInt(OutputStream out,
int x)
Write a variable size int.
|
static void |
writeVarLong(ByteBuffer buff,
long x)
Write a variable size long.
|
static void |
writeVarLong(OutputStream out,
long x)
Write a variable size long.
|
public static final int ERROR_READING_FAILED
public static final int ERROR_WRITING_FAILED
public static final int ERROR_INTERNAL
public static final int ERROR_CLOSED
public static final int ERROR_UNSUPPORTED_FORMAT
public static final int ERROR_FILE_CORRUPT
public static final int ERROR_FILE_LOCKED
public static final int ERROR_SERIALIZATION
public static final int ERROR_CHUNK_NOT_FOUND
public static final int ERROR_BLOCK_NOT_FOUND
public static final int ERROR_TRANSACTION_CORRUPT
public static final int ERROR_TRANSACTION_LOCKED
public static final int ERROR_TOO_MANY_OPEN_TRANSACTIONS
public static final int ERROR_TRANSACTION_ILLEGAL_STATE
public static final int PAGE_TYPE_LEAF
public static final int PAGE_TYPE_NODE
public static final int PAGE_COMPRESSED
public static final int PAGE_COMPRESSED_HIGH
public static final int MAX_VAR_INT_LEN
public static final int MAX_VAR_LONG_LEN
public static final int COMPRESSED_VAR_INT_MAX
public static final long COMPRESSED_VAR_LONG_MAX
public static final int PAGE_MEMORY
public static final int PAGE_MEMORY_CHILD
public static final int PAGE_LARGE
public static final Charset UTF8
public static final Charset LATIN
public static int getVarIntLen(int x)
x
- the valuepublic static int getVarLongLen(long x)
x
- the valuepublic static int readVarInt(ByteBuffer buff)
buff
- the source bufferpublic static long readVarLong(ByteBuffer buff)
buff
- the source bufferpublic static void writeVarInt(OutputStream out, int x) throws IOException
out
- the output streamx
- the valueIOException
public static void writeVarInt(ByteBuffer buff, int x)
buff
- the source bufferx
- the valuepublic static void writeStringData(ByteBuffer buff, String s, int len)
buff
- the target buffer (must be large enough)s
- the stringlen
- the number of characterspublic static String readString(ByteBuffer buff, int len)
buff
- the source bufferlen
- the number of characterspublic static void writeVarLong(ByteBuffer buff, long x)
buff
- the target bufferx
- the valuepublic static void writeVarLong(OutputStream out, long x) throws IOException
out
- the output streamx
- the valueIOException
public static void copyWithGap(Object src, Object dst, int oldSize, int gapIndex)
src
- the source arraydst
- the target arrayoldSize
- the size of the old arraygapIndex
- the index of the gappublic static void copyExcept(Object src, Object dst, int oldSize, int removeIndex)
src
- the source arraydst
- the target arrayoldSize
- the size of the old arrayremoveIndex
- the index of the entry to removepublic static void readFully(FileChannel file, long pos, ByteBuffer dst)
file
- the file channelpos
- the absolute position within the filedst
- the byte bufferIllegalStateException
- if some data could not be readpublic static void writeFully(FileChannel file, long pos, ByteBuffer src)
file
- the file channelpos
- the absolute position within the filesrc
- the source bufferpublic static int encodeLength(int len)
len
- the lengthpublic static int getPageChunkId(long pos)
pos
- the positionpublic static int getPageMaxLength(long pos)
pos
- the positionpublic static int getPageOffset(long pos)
pos
- the positionpublic static int getPageType(long pos)
pos
- the positionpublic static long getPagePos(int chunkId, int offset, int length, int type)
chunkId
- the chunk idoffset
- the offsetlength
- the lengthtype
- the page type (1 for node, 0 for leaf)public static short getCheckValue(int x)
x
- the valuepublic static StringBuilder appendMap(StringBuilder buff, HashMap<String,?> map)
buff
- the target buffermap
- the mappublic static void appendMap(StringBuilder buff, String key, Object value)
buff
- the target bufferkey
- the keyvalue
- the valuepublic static HashMap<String,String> parseMap(String s)
s
- the listIllegalStateException
- if parsing failedpublic static int getFletcher32(byte[] bytes, int length)
bytes
- the byteslength
- the message length (if odd, 0 is appended)public static void checkArgument(boolean test, String message, Object... arguments)
test
- true if the argument is validmessage
- the messagearguments
- the argumentsIllegalArgumentException
- if the argument is invalidpublic static IllegalArgumentException newIllegalArgumentException(String message, Object... arguments)
message
- the messagearguments
- the argumentspublic static UnsupportedOperationException newUnsupportedOperationException(String message)
message
- the messagepublic static ConcurrentModificationException newConcurrentModificationException(String message)
message
- the messagepublic static IllegalStateException newIllegalStateException(int errorCode, String message, Object... arguments)
errorCode
- the error codemessage
- the messagearguments
- the argumentspublic static String formatMessage(int errorCode, String message, Object... arguments)
errorCode
- the error codemessage
- the messagearguments
- the argumentspublic static int getErrorCode(String m)
m
- the messagepublic static byte[] newBytes(int len)
This method should be used if the size of the array is user defined, or stored in a file, so wrong size data can be distinguished from regular out-of-memory.
len
- the number of bytes requestedOutOfMemoryError
- if the allocation was too largepublic static long readHexLong(Map<String,? extends Object> map, String key, long defaultValue)
map
- the mapkey
- the keydefaultValue
- if the value is nullIllegalStateException
- if parsing failspublic static long parseHexLong(String x)
x
- the stringIllegalStateException
- if parsing failspublic static int parseHexInt(String x)
x
- the stringIllegalStateException
- if parsing failspublic static int readHexInt(HashMap<String,? extends Object> map, String key, int defaultValue)
map
- the mapkey
- the keydefaultValue
- if the value is nullIllegalStateException
- if parsing failsCopyright © 2017 JBoss by Red Hat. All rights reserved.