Package org.firebirdsql.gds.ng.dbcrypt
Class DbCryptData
- java.lang.Object
-
- org.firebirdsql.gds.ng.dbcrypt.DbCryptData
-
public final class DbCryptData extends java.lang.ObjectData of a database encryption key callback (or reply).- Since:
- 3.0.4
- Author:
- Mark Rotteveel
-
-
Field Summary
Fields Modifier and Type Field Description static DbCryptDataEMPTY_DATA
-
Constructor Summary
Constructors Constructor Description DbCryptData(byte[] pluginData, int replySize)InitializesDbCryptDatainstance.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DbCryptDatacreateReply(byte[] pluginData)Creates a reply with plugin data and expected reply size of0.byte[]getPluginData()intgetReplySize()Returns the expected reply size.
-
-
-
Field Detail
-
EMPTY_DATA
public static final DbCryptData EMPTY_DATA
-
-
Constructor Detail
-
DbCryptData
public DbCryptData(byte[] pluginData, int replySize)InitializesDbCryptDatainstance.- Parameters:
pluginData- Data for/from plugin (can benull)replySize- Expected reply size (normally use0for a reply)- Throws:
java.lang.IllegalArgumentException- when plugin data exceeds maximum length of 32767 bytes
-
-
Method Detail
-
getPluginData
public byte[] getPluginData()
- Returns:
- Plugin data (can be
null)
-
getReplySize
public int getReplySize()
Returns the expected reply size.For a protocol version 13 callback, the value will be
Integer.MIN_VALUEas the protocol does not include this information.In the case of a callback, this value is as received from Firebird. Judging by the code in Firebird for protocol v14 and higher, this value may be negative, and should then be considered equivalent to
1.Plugins can use the value as a hint to the expected size of their reply. However smaller (or larger) replies will work.
- Returns:
- Expected reply size
-
createReply
public static DbCryptData createReply(byte[] pluginData)
Creates a reply with plugin data and expected reply size of0.- Parameters:
pluginData- Plugin response data- Returns:
- Crypt data
-
-