Class SqlJetUtility
java.lang.Object
org.tmatesoft.sqljet.core.internal.SqlJetUtility
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final longabsolute(long i) Returns absolute value of argumentstatic final Object[]static byte[]addZeroByteEnd(byte[] b) static final ObjectadjustNumberType(Object value) static final Object[]adjustNumberTypes(Object[] key) static final SqlJetScopestatic final ISqlJetMemoryPointerallocatePtr(int size) static final ISqlJetMemoryPointerallocatePtr(int size, SqlJetMemoryBufferType bufferType) static final doublestatic final Longstatic booleanbitSetTest(BitSet bitSet, int index) Check to see if the i-th bit is set.static Object[]static Longstatic ISqlJetMemoryPointerstatic ISqlJetMemoryPointerfromString(String s, SqlJetEncoding enc) GetByteBufferfromString.static final shortfromUnsigned(int value) static final intfromUnsigned(long value) static final bytefromUnsigned(short value) static final intRead a two-byte big-endian integer values.static final intget2byte(ISqlJetMemoryPointer x, int off) Read a two-byte big-endian integer values.static final intRead a four-byte big-endian integer value.static final intget4byte(ISqlJetMemoryPointer p, int pos) Read a four-byte big-endian integer value.static final longget4byteUnsigned(byte[] p) Read a four-byte big-endian integer value.static final longget4byteUnsigned(byte[] p, int pos) Read a four-byte big-endian integer value.static final longRead a four-byte big-endian integer value.static final longget4byteUnsigned(ISqlJetMemoryPointer p, int pos) Read a four-byte big-endian integer value.static booleangetBoolSysProp(String propName, boolean defValue) static byte[]static <T extends Enum<T>>
TgetEnumSysProp(String propName, T defValue) static intgetIntSysProp(String propName, int defValue) static ISqlJetMemoryPointergetMoved(ISqlJetMemoryPointer preceding, ISqlJetMemoryPointer ptr, int offset) static StringgetSysProp(String propName, String defValue) static final intgetUnsignedByte(ISqlJetMemoryPointer byteBuffer, int index) Get unsigned byte from byte bufferstatic bytegetVarint(ISqlJetMemoryPointer p, int offset, long[] v) static bytegetVarint(ISqlJetMemoryPointer p, long[] v) Read a 64-bit variable-length integer from memory starting at p[0].static bytegetVarint32(ISqlJetMemoryPointer p, int[] v) Read a 32-bit variable-length integer from memory starting at p[0].static bytegetVarint32(ISqlJetMemoryPointer p, int offset, int[] v) static final Object[]insertArray(Object[] intoArray, Object[] insertArray, int pos) static booleanReturn TRUE if z is a pure numeric string.static voidstatic final intmemcmp(byte[] a1, byte[] a2, int count) static final intmemcmp(byte[] a1, int from1, byte[] a2, int from2, int count) static final intmemcmp(ISqlJetMemoryPointer a1, int a1offs, ISqlJetMemoryPointer a2, int a2offs, int count) static final intmemcmp(ISqlJetMemoryPointer a1, ISqlJetMemoryPointer a2, int count) static final voidmemcpy(byte[] dest, byte[] src, int length) static final voidmemcpy(byte[] dest, int dstPos, byte[] src, int srcPos, int length) static final voidmemcpy(ISqlJetMemoryPointer dest, int dstPos, ISqlJetMemoryPointer src, int srcPos, int length) static final voidmemcpy(ISqlJetMemoryPointer dest, ISqlJetMemoryPointer src, int length) static final voidmemcpy(SqlJetCloneable[] dest, SqlJetCloneable[] src, int length) static final <T extends SqlJetCloneable>
Tmemcpy(T src) static final voidmemmove(ISqlJetMemoryPointer dst, int dstOffs, ISqlJetMemoryPointer src, int srcOffs, int n) static final voidmemmove(ISqlJetMemoryPointer dst, ISqlJetMemoryPointer src, int n) static final voidmemset(ISqlJetMemoryPointer data, byte value) static final voidmemset(ISqlJetMemoryPointer data, byte value, int count) static final voidmemset(ISqlJetMemoryPointer data, int from, byte value, int count) static final voidmovePtr(ISqlJetMemoryPointer p, int pos) static final booleanmutex_held(ISqlJetMutex mutex) of(E e) of(E e1, E e2) of(E e1, E... e) of(E e1, E e2, E e3) static final ISqlJetMemoryPointerstatic final ISqlJetMemoryPointerpointer(ISqlJetMemoryPointer p, int pos) Implements address arithmetic on byte buffer.static final voidput2byte(ISqlJetMemoryPointer p, int v) Write a two-byte big-endian integer values.static final voidput2byte(ISqlJetMemoryPointer p, int off, int v) Write a two-byte big-endian integer values.static final ISqlJetMemoryPointerput4byte(int v) Write a four-byte big-endian integer value.static final voidput4byte(ISqlJetMemoryPointer p, int pos, long v) Write a four-byte big-endian integer value.static final voidput4byte(ISqlJetMemoryPointer p, long v) Write a four-byte big-endian integer value.static final voidput4byteUnsigned(byte[] p, int pos, long v) Write a four-byte big-endian integer value.static final ISqlJetMemoryPointerput4byteUnsigned(long v) Write a four-byte big-endian integer value.static final voidput4byteUnsigned(ISqlJetMemoryPointer p, int pos, long v) Write a four-byte big-endian integer value.static final voidput4byteUnsigned(ISqlJetMemoryPointer p, long v) Write a four-byte big-endian integer value.static final ISqlJetMemoryPointerputUnsignedByte(ISqlJetMemoryPointer byteBuffer, int index, int value) Put unsigned byte to byte bufferstatic intputVarint(ISqlJetMemoryPointer p, long v) Write a 64-bit variable-length integer to memory starting at p[0].static intputVarint32(ISqlJetMemoryPointer p, int v) This routine is a faster version of sqlite3PutVarint() that only works for 32-bit positive integers and which is optimized for the common case of small integers.static byte[]readByteBuffer(ISqlJetMemoryPointer buffer) static intsqlite3VarintLen(long v) Return the number of bytes that will be needed to store the given 64-bit integer.static ISqlJetMemoryPointerstreamToBuffer(InputStream stream) static intstrlen(byte[] s, int from) static intstrlen(ISqlJetMemoryPointer s, int from) static intCompute a string length that is limited to what can be stored in lower 30 bits of a 32-bit signed integer.static StringConvert byte buffer to string.static StringtoString(ISqlJetMemoryPointer buf, SqlJetEncoding enc) Convert byte buffer to string.static final shorttoUnsigned(byte value) static longtoUnsigned(int value) static final inttoUnsigned(short value) static ISqlJetMemoryPointertranslate(ISqlJetMemoryPointer buf, SqlJetEncoding from, SqlJetEncoding to) TranslateByteBufferfrom one charset to other charset.static final Stringstatic intvarintLen(long v) Return the number of bytes that will be needed to store the given 64-bit integer.static final ISqlJetMemoryPointerwrapPtr(byte[] bs)
-
Field Details
-
SQLJET_PACKAGENAME
- See Also:
-
memoryManager
-
-
Constructor Details
-
SqlJetUtility
public SqlJetUtility()
-
-
Method Details
-
log
- Parameters:
logger-format-args-
-
allocatePtr
-
allocatePtr
-
pointer
- Parameters:
buf-- Returns:
-
pointer
Implements address arithmetic on byte buffer.- Parameters:
p-pos-- Returns:
-
movePtr
-
wrapPtr
- Parameters:
bs-- Returns:
-
getSysProp
- Throws:
SqlJetError
-
getIntSysProp
- Throws:
SqlJetError
-
getBoolSysProp
- Parameters:
string-b-- Returns:
-
getEnumSysProp
- Type Parameters:
T-- Parameters:
propName-defValue-- Returns:
-
get2byte
Read a two-byte big-endian integer values. -
get2byte
Read a two-byte big-endian integer values. -
put2byte
Write a two-byte big-endian integer values. -
put2byte
Write a two-byte big-endian integer values. -
put4byte
Write a four-byte big-endian integer value. -
get4byte
Read a four-byte big-endian integer value. -
get4byte
Read a four-byte big-endian integer value. -
put4byte
Write a four-byte big-endian integer value. -
put4byte
Write a four-byte big-endian integer value. -
memcpy
public static final void memcpy(byte[] dest, byte[] src, int length) - Parameters:
dest-src-length-
-
memcpy
public static final void memcpy(byte[] dest, int dstPos, byte[] src, int srcPos, int length) -
memcpy
-
memcpy
public static final void memcpy(ISqlJetMemoryPointer dest, int dstPos, ISqlJetMemoryPointer src, int srcPos, int length) -
memcpy
public static final void memcpy(SqlJetCloneable[] dest, SqlJetCloneable[] src, int length) throws SqlJetException - Throws:
SqlJetException
-
memcpy
- Throws:
SqlJetException
-
memset
- Parameters:
data-from-value-count-
-
memset
- Parameters:
data-value-count-
-
memset
- Parameters:
data-value-
-
strlen
public static int strlen(byte[] s, int from) - Parameters:
s-from-- Returns:
-
strlen
-
bitSetTest
Check to see if the i-th bit is set. Return true or false. If p is NULL (if the bitmap has not been created) or if i is out of range, then return false.- Parameters:
bitSet-index-- Returns:
-
memcmp
public static final int memcmp(byte[] a1, byte[] a2, int count) - Parameters:
magic-journalMagic-i-- Returns:
-
memcmp
public static final int memcmp(byte[] a1, int from1, byte[] a2, int from2, int count) -
memcmp
- Parameters:
count-z-z2-- Returns:
-
memcmp
public static final int memcmp(ISqlJetMemoryPointer a1, int a1offs, ISqlJetMemoryPointer a2, int a2offs, int count) - Parameters:
count-z-z2-- Returns:
-
addZeroByteEnd
public static byte[] addZeroByteEnd(byte[] b) - Parameters:
b-- Returns:
-
getBytes
- Parameters:
sqliteFileHeader-- Returns:
-
putVarint
Write a 64-bit variable-length integer to memory starting at p[0]. The length of data write will be between 1 and 9 bytes. The number of bytes written is returned. A variable-length integer consists of the lower 7 bits of each byte for all bytes that have the 8th bit set and one byte with the 8th bit clear. Except, if we get to the 9th byte, it stores the full 8 bits and is the last byte. -
putVarint32
This routine is a faster version of sqlite3PutVarint() that only works for 32-bit positive integers and which is optimized for the common case of small integers. A MACRO version, putVarint32, is provided which inlines the single-byte case. All code should use the MACRO version as this function assumes the single-byte case has already been handled. -
getVarint
Read a 64-bit variable-length integer from memory starting at p[0]. Return the number of bytes read. The value is stored in *v. -
getVarint
-
getVarint32
Read a 32-bit variable-length integer from memory starting at p[0]. Return the number of bytes read. The value is stored in *v. A MACRO version, getVarint32, is provided which inlines the single-byte case. All code should use the MACRO version as this function assumes the single-byte case has already been handled. -
getVarint32
-
sqlite3VarintLen
public static int sqlite3VarintLen(long v) Return the number of bytes that will be needed to store the given 64-bit integer. -
mutex_held
- Parameters:
mutex-- Returns:
-
strlen30
Compute a string length that is limited to what can be stored in lower 30 bits of a 32-bit signed integer.- Parameters:
z-- Returns:
-
getUnsignedByte
Get unsigned byte from byte buffer- Parameters:
byteBuffer-index-- Returns:
-
putUnsignedByte
public static final ISqlJetMemoryPointer putUnsignedByte(ISqlJetMemoryPointer byteBuffer, int index, int value) Put unsigned byte to byte buffer- Parameters:
byteBuffer-index-value-- Returns:
-
toString
Convert byte buffer to string.- Parameters:
buf-- Returns:
-
toString
Convert byte buffer to string.- Parameters:
buf-- Returns:
- Throws:
SqlJetException
-
fromString
GetByteBufferfromString.- Parameters:
s-enc-- Returns:
- Throws:
SqlJetException
-
translate
public static ISqlJetMemoryPointer translate(ISqlJetMemoryPointer buf, SqlJetEncoding from, SqlJetEncoding to) throws SqlJetException TranslateByteBufferfrom one charset to other charset.- Parameters:
buf-from-to-- Returns:
- Throws:
SqlJetException
-
trim
- Parameters:
s-- Returns:
-
varintLen
public static int varintLen(long v) Return the number of bytes that will be needed to store the given 64-bit integer. -
toUnsigned
public static final short toUnsigned(byte value) -
fromUnsigned
public static final byte fromUnsigned(short value) -
toUnsigned
public static final int toUnsigned(short value) -
fromUnsigned
public static final short fromUnsigned(int value) -
toUnsigned
public static long toUnsigned(int value) -
fromUnsigned
public static final int fromUnsigned(long value) -
get4byteUnsigned
public static final long get4byteUnsigned(byte[] p) Read a four-byte big-endian integer value. -
get4byteUnsigned
public static final long get4byteUnsigned(byte[] p, int pos) Read a four-byte big-endian integer value. -
put4byteUnsigned
Write a four-byte big-endian integer value. -
put4byteUnsigned
public static final void put4byteUnsigned(byte[] p, int pos, long v) Write a four-byte big-endian integer value. -
get4byteUnsigned
Read a four-byte big-endian integer value. -
get4byteUnsigned
Read a four-byte big-endian integer value. -
put4byteUnsigned
Write a four-byte big-endian integer value. -
put4byteUnsigned
Write a four-byte big-endian integer value. -
memmove
- Parameters:
n-z-slice-
-
memmove
public static final void memmove(ISqlJetMemoryPointer dst, int dstOffs, ISqlJetMemoryPointer src, int srcOffs, int n) - Parameters:
n-z-slice-
-
atof
- Parameters:
z-- Returns:
-
atoi64
- Parameters:
str-- Returns:
-
absolute
public static final long absolute(long i) Returns absolute value of argument- Parameters:
i-- Returns:
-
addArrays
- Parameters:
key-dataRowId-- Returns:
-
insertArray
-
of
-
of
-
of
-
of
-
noneOf
-
adjustNumberTypes
- Parameters:
key-- Returns:
-
adjustScopeNumberTypes
-
adjustNumberType
-
streamToBuffer
- Parameters:
value-- Returns:
- Throws:
SqlJetException
-
readByteBuffer
- Parameters:
buffer-- Returns:
-
copyArray
- Parameters:
firstKey-- Returns:
-
isNumber
Return TRUE if z is a pure numeric string. Return FALSE and leave realnum unchanged if the string contains any character which is not part of a number. If the string is pure numeric, set realnum to TRUE if the string contains the '.' character or an "E+000" style exponentiation suffix. Otherwise set realnum to FALSE. Note that just becaue realnum is false does not mean that the number can be successfully converted into an integer - it might be too big. An empty string is considered non-numeric.- Parameters:
s-realnum-- Returns:
-
doubleToInt64
- Parameters:
r-- Returns:
-
fromByteBuffer
- Parameters:
value-- Returns:
-
getMoved
public static ISqlJetMemoryPointer getMoved(ISqlJetMemoryPointer preceding, ISqlJetMemoryPointer ptr, int offset)
-