M
- type of Message
that underlying records will use@API(value=UNSTABLE) public class TransformedRecordSerializerJCE<M extends Message> extends TransformedRecordSerializer<M>
TransformedRecordSerializer
to use JCE to encrypt and decrypt records.Modifier and Type | Class and Description |
---|---|
static class |
TransformedRecordSerializerJCE.Builder<M extends Message>
Builder class for the
TransformedRecordSerializerJCE class. |
TransformedRecordSerializer.TransformState
RecordSerializer.Counts, RecordSerializer.Events
Modifier and Type | Field and Description |
---|---|
protected String |
cipherName |
protected static String |
DEFAULT_CIPHER |
protected Key |
encryptionKey |
protected static int |
IV_SIZE |
protected SecureRandom |
secureRandom |
compressionLevel, compressWhenSerializing, DEFAULT_COMPRESSION_LEVEL, ENCODING_CLEAR, ENCODING_COMPRESSED, ENCODING_ENCRYPTED, ENCODING_PROTO_MESSAGE_FIELD, ENCODING_PROTO_TYPE_MASK, encryptWhenSerializing, inner, MAX_COMPRESSION_VERSION, MIN_COMPRESSION_VERSION
Modifier | Constructor and Description |
---|---|
protected |
TransformedRecordSerializerJCE(RecordSerializer<M> inner,
boolean compressWhenSerializing,
int compressionLevel,
boolean encryptWhenSerializing,
String cipherName,
Key encryptionKey,
SecureRandom secureRandom) |
Modifier and Type | Method and Description |
---|---|
protected void |
decrypt(TransformedRecordSerializer.TransformState state,
StoreTimer timer) |
protected void |
encrypt(TransformedRecordSerializer.TransformState state,
StoreTimer timer) |
static <M extends Message> |
newBuilder(RecordSerializer<M> inner)
Creates a new
TransformedRecordSerializerJCE.Builder instance around
the given serializer. |
static TransformedRecordSerializerJCE.Builder<Message> |
newDefaultBuilder()
Creates a new
TransformedRecordSerializerJCE.Builder instance
that is backed by the default serializer for Message s, namely
a DynamicMessageRecordSerializer . |
compress, decompress, deserialize, serialize, widen
protected static final String DEFAULT_CIPHER
protected static final int IV_SIZE
@Nullable protected final SecureRandom secureRandom
protected TransformedRecordSerializerJCE(@Nonnull RecordSerializer<M> inner, boolean compressWhenSerializing, int compressionLevel, boolean encryptWhenSerializing, @Nullable String cipherName, @Nullable Key encryptionKey, @Nullable SecureRandom secureRandom)
protected void encrypt(@Nonnull TransformedRecordSerializer.TransformState state, @Nullable StoreTimer timer) throws GeneralSecurityException
encrypt
in class TransformedRecordSerializer<M extends Message>
GeneralSecurityException
protected void decrypt(@Nonnull TransformedRecordSerializer.TransformState state, @Nullable StoreTimer timer) throws GeneralSecurityException
decrypt
in class TransformedRecordSerializer<M extends Message>
GeneralSecurityException
public static TransformedRecordSerializerJCE.Builder<Message> newDefaultBuilder()
TransformedRecordSerializerJCE.Builder
instance
that is backed by the default serializer for Message
s, namely
a DynamicMessageRecordSerializer
. Methods on the returned
Builder
instance can be used to specify which transformations
to apply after using the default serializer.Builder
instance backed by a DynamicMessageRecordSerializer
public static <M extends Message> TransformedRecordSerializerJCE.Builder<M> newBuilder(@Nonnull RecordSerializer<M> inner)
TransformedRecordSerializerJCE.Builder
instance around
the given serializer. Methods on the Builder
instance can be used to
specify which transformations after using the provided serializer.M
- type of Message
that underlying records will useinner
- RecordSerializer
to use before/after applying transformationsBuilder
instance that can be used to specify transformations