org.refcodes.mixin.AnnotatorAccessor
, org.refcodes.mixin.DecryptPrefixAccessor
, org.refcodes.mixin.DelimiterAccessor
, org.refcodes.mixin.Dumpable
, org.refcodes.mixin.EncryptPrefixAccessor
, org.refcodes.mixin.TypeAccessor<String>
, ObfuscationProperties
, org.refcodes.properties.Properties
, org.refcodes.struct.CanonicalMap
, org.refcodes.struct.Containable
, org.refcodes.struct.Dictionary<String,T>
, org.refcodes.struct.InterOperableMap<String>
, org.refcodes.struct.Keys<String,T>
, org.refcodes.struct.PathMap<String>
public class ObfuscationPropertiesDecorator extends AbstractObfuscationPropertiesDecorator implements ObfuscationProperties
ObfuscationPropertiesDecorator
represents a decorator for
Properties
instances by implementing the
ObfuscationProperties
interface. Properties marked in the resource as
"to be decrypted" are decrypted (e.g. with a host individual key). Those
encrypted properties are decrypted "on-the-fly" (in memory only) upon
accessing the according property. Retrieving a value via AbstractObfuscationPropertiesDecorator.get(Object)
(or the like), which is prefixed with "decrypt:" (default), will be decrypted
accordingly before passed back to the caller. The prefix may be changed by
invoking the according implementaion's constructor. Properties marked in the
resource as "to be encrypted" are not modified and returned without the
prefix when being queried via AbstractObfuscationPropertiesDecorator.get(Object)
(or the like), as the
Properties
are immutable. By default (if not configured otherwise)
the prefix Prefix.DECRYPT
is used as decrypt prefix (as of
Prefix.getPrefix()
). Also by default (if not configured otherwise)
the prefix Prefix.ENCRYPT
is used as encrypt prefix (as of
Prefix.getPrefix()
).org.refcodes.mixin.AnnotatorAccessor.AnnotatorBuilder<B extends org.refcodes.mixin.AnnotatorAccessor.AnnotatorBuilder<B>>, org.refcodes.mixin.AnnotatorAccessor.AnnotatorMutator, org.refcodes.mixin.AnnotatorAccessor.AnnotatorProperty
org.refcodes.struct.CanonicalMap.CanonicalMapBuilder, org.refcodes.struct.CanonicalMap.MutableCanonicalMap
org.refcodes.mixin.DecryptPrefixAccessor.DecryptPrefixBuilder<B extends org.refcodes.mixin.DecryptPrefixAccessor.DecryptPrefixBuilder<B>>, org.refcodes.mixin.DecryptPrefixAccessor.DecryptPrefixMutator, org.refcodes.mixin.DecryptPrefixAccessor.DecryptPrefixProperty
org.refcodes.mixin.DelimiterAccessor.DelimiterBuilder<B extends org.refcodes.mixin.DelimiterAccessor.DelimiterBuilder<B>>, org.refcodes.mixin.DelimiterAccessor.DelimiterMutator, org.refcodes.mixin.DelimiterAccessor.DelimiterProperty
org.refcodes.struct.Dictionary.MutableDictionary<K extends Object,V extends Object>
org.refcodes.mixin.EncryptPrefixAccessor.EncryptPrefixBuilder<B extends org.refcodes.mixin.EncryptPrefixAccessor.EncryptPrefixBuilder<B>>, org.refcodes.mixin.EncryptPrefixAccessor.EncryptPrefixMutator, org.refcodes.mixin.EncryptPrefixAccessor.EncryptPrefixProperty
org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T extends Object>, org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T extends Object>
org.refcodes.struct.Keys.MutableKeys<K extends Object,V extends Object>, org.refcodes.struct.Keys.MutableValues<K extends Object,V extends Object>
ObfuscationProperties.MutableObfuscationProperties, ObfuscationProperties.ObfuscationPropertiesBuilder
org.refcodes.struct.PathMap.MutablePathMap<T extends Object>, org.refcodes.struct.PathMap.PathMapBuilder<T extends Object>
org.refcodes.properties.Properties.MutableProperties, org.refcodes.properties.Properties.PropertiesBuilder
org.refcodes.mixin.TypeAccessor.TypeBuilder<T extends Object,B extends org.refcodes.mixin.TypeAccessor.TypeBuilder<T,B>>, org.refcodes.mixin.TypeAccessor.TypeMutator<T extends Object>, org.refcodes.mixin.TypeAccessor.TypeProperty<T extends Object>
_decryptPrefix, _encryptPrefix
Constructor | Description |
---|---|
ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties) |
Decorates the provided
Properties with additional
ObfuscationProperties behavior or functionality. |
ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties,
String aSecret) |
Decorates the provided
Properties with additional
ObfuscationProperties behavior or functionality. |
ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties,
String aDecryptPrefix,
String aEncryptPrefix) |
Decorates the provided
Properties with additional
ObfuscationProperties behavior or functionality. |
ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties,
String aDecryptPrefix,
String aEncryptPrefix,
String aSecret) |
Decorates the provided
Properties with additional
ObfuscationProperties behavior or functionality. |
ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties,
String aDecryptPrefix,
String aEncryptPrefix,
org.refcodes.runtime.SystemContext aObfuscationMode) |
Decorates the provided
Properties with additional
ObfuscationProperties behavior or functionality. |
ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties,
org.refcodes.runtime.SystemContext aObfuscationMode) |
Decorates the provided
Properties with additional
ObfuscationProperties behavior or functionality. |
get, getDecryptPrefix, getEncryptPrefix
containsKey, getAnnotator, getDelimiter, getProperties, isEmpty, keySet, retrieveFrom, retrieveTo, setProperties, size, toDataStructure, values
asArray, asArray, asArray, asArray, asBooleanArray, asBooleanArray, asBooleanArray, asBooleanArray, asByteArray, asByteArray, asByteArray, asByteArray, asCharArray, asCharArray, asCharArray, asCharArray, asDoubleArray, asDoubleArray, asDoubleArray, asDoubleArray, asFloatArray, asFloatArray, asFloatArray, asFloatArray, asIntArray, asIntArray, asIntArray, asIntArray, asLongArray, asLongArray, asLongArray, asLongArray, asShortArray, asShortArray, asShortArray, asShortArray, queryBetween, toMap, toProperties
getBoolean, getBoolean, getBoolean, getBoolean, getBoolean, getBooleanOr, getBooleanOr, getBooleanOr, getBooleanOr, getBooleanOr, getByte, getByte, getByte, getByte, getByte, getByteOr, getByteOr, getByteOr, getByteOr, getByteOr, getChar, getChar, getChar, getChar, getChar, getCharOr, getCharOr, getCharOr, getCharOr, getCharOr, getClass, getClass, getClass, getClass, getClass, getClassOr, getClassOr, getClassOr, getClassOr, getClassOr, getDouble, getDouble, getDouble, getDouble, getDouble, getDoubleOr, getDoubleOr, getDoubleOr, getDoubleOr, getDoubleOr, getEnum, getEnum, getEnum, getEnum, getEnum, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getFloat, getFloat, getFloat, getFloat, getFloat, getFloatOr, getFloatOr, getFloatOr, getFloatOr, getFloatOr, getInt, getInt, getInt, getInt, getInt, getIntOr, getIntOr, getIntOr, getIntOr, getIntOr, getLong, getLong, getLong, getLong, getLong, getLongOr, getLongOr, getLongOr, getLongOr, getLongOr, getShort, getShort, getShort, getShort, getShort, getShortOr, getShortOr, getShortOr, getShortOr, getShortOr, getString, getString, getString, getString, getString, getStringOr, getStringOr, getStringOr, getStringOr, getStringOr
containsKey, get, getOr, keySet, use, values
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
children, children, children, children, children, children, containsKey, containsKey, containsKey, dirs, dirs, dirs, dirs, dirs, dirs, findPaths, fromExternalPath, get, get, get, getArray, getArray, getArray, getArray, getArray, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getRootPath, getValueAt, getValueAt, getValueAt, getValueAt, getValueAt, getValueAt, hasChildren, hasChildren, hasChildren, hasChildren, hasChildren, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasParentPath, hasPath, hasPath, hasPath, hasPath, hasSubDirs, hasSubDirs, hasSubDirs, hasSubDirs, hasValue, hasValue, hasValue, hasValue, hasValue, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, isArray, isArray, isArray, isArray, isArray, isArray, isChild, isChild, isChild, isChild, isDir, isDir, isDir, isDir, isDir, isEqualTo, isIndexDir, isIndexDir, isIndexDir, isIndexDir, isIndexDir, isLeaf, isLeaf, isLeaf, isLeaf, isLeaf, isRootPath, keySet, keySet, keySet, keySet, keySet, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, leaves, leaves, leaves, leaves, leaves, leaves, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, paths, paths, paths, paths, paths, paths, queryPaths, queryPaths, queryPaths, queryPaths, queryPaths, queryPaths, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, toDataStructure, toDataStructure, toExternalPath, toInstance, toInstance, toLeaf, toMap, toNormalizedPath, toParentPath, toPath, toPath, toPath, toPathElements, toPathList, toPathStack, toPropertyPath, toType, toType
containsValue, getAnnotator, getDelimiter, getDir, getDir, getDir, getDir, getDir, getDirAt, getDirAt, getDirAt, getDirAt, getDirAt, getDirAt, getType, query, query, query, query, query, queryBetween, queryBetween, queryBetween, queryBetween, queryBetween, queryFrom, queryFrom, queryFrom, queryFrom, queryFrom, queryFrom, queryTo, queryTo, queryTo, queryTo, queryTo, queryTo, retrieveBetween, retrieveBetween, retrieveBetween, retrieveBetween, retrieveBetween, retrieveFrom, retrieveFrom, retrieveFrom, retrieveFrom, retrieveFrom, retrieveTo, retrieveTo, retrieveTo, retrieveTo, retrieveTo
public ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties)
Properties
with additional
ObfuscationProperties
behavior or functionality. Changes applied
to the provided Properties
affect the decorator. A host specific
secret is used to encrypt and decrypt the according properties.aProperties
- The Properties
to be decorated.public ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties, String aDecryptPrefix, String aEncryptPrefix)
Properties
with additional
ObfuscationProperties
behavior or functionality. Changes applied
to the provided Properties
affect the decorator. A host specific
secret is used to encrypt and decrypt the according properties.aProperties
- The Properties
to be decorated.aDecryptPrefix
- The decrypt prefix to be used for values which are
to be decrypted, e.g. "decrypt:".aEncryptPrefix
- The decrypt prefix to be used. for values which are
to be encrypted, e.g. "encrypt:".public ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties, String aDecryptPrefix, String aEncryptPrefix, org.refcodes.runtime.SystemContext aObfuscationMode)
Properties
with additional
ObfuscationProperties
behavior or functionality. Changes applied
to the provided Properties
affect the decorator. A host specific
secret is used to encrypt and decrypt the according properties.aProperties
- The Properties
to be decorated.aDecryptPrefix
- The decrypt prefix to be used for values which are
to be decrypted, e.g. "decrypt:".aEncryptPrefix
- The decrypt prefix to be used. for values which are
to be encrypted, e.g. "encrypt:".aObfuscationMode
- The SystemContext
specifies which level
of obfuscation is to be used when encountering upon obfuscated
properties: E.g. obfuscation may be bound to the host, the
"secret" used for obfuscation being the same for all applications
on the same host or obfuscation may be bound to the application,
being different for different applications on the same host.public ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties, String aDecryptPrefix, String aEncryptPrefix, String aSecret)
Properties
with additional
ObfuscationProperties
behavior or functionality. Changes applied
to the provided Properties
affect the decorator. The given secret
is used to encrypt and decrypt the according properties.aProperties
- The Properties
to be decorated.aDecryptPrefix
- The decrypt prefix to be used for values which are
to be decrypted, e.g. "decrypt:".aEncryptPrefix
- The decrypt prefix to be used. for values which are
to be encrypted, e.g. "encrypt:".aSecret
- The secret to use when encrypting and decrypting the
according properties.public ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties, org.refcodes.runtime.SystemContext aObfuscationMode)
Properties
with additional
ObfuscationProperties
behavior or functionality. Changes applied
to the provided Properties
affect the decorator. A host specific
secret is used to encrypt and decrypt the according properties.aProperties
- The Properties
to be decorated.aObfuscationMode
- The SystemContext
specifies which level
of obfuscation is to be used when encountering upon obfuscated
properties: E.g. obfuscation may be bound to the host, the
"secret" used for obfuscation being the same for all applications
on the same host or obfuscation may be bound to the application,
being different for different applications on the same host.public ObfuscationPropertiesDecorator(org.refcodes.properties.Properties aProperties, String aSecret)
Properties
with additional
ObfuscationProperties
behavior or functionality. Changes applied
to the provided Properties
affect the decorator. The given secret
is used to encrypt and decrypt the according properties.aProperties
- The Properties
to be decorated.aSecret
- The secret to use when encrypting and decrypting the
according properties.Copyright © 2021. All rights reserved.