Class MultipleProviderFactory
java.lang.Object
com.amazonaws.encryptionsdk.multi.MultipleProviderFactory
Constructs
MasterKeyProviders which are backed by any number of other MasterKeyProviders. The returned provider will have the following properties:
MasterKeyProvider.getMasterKeysForEncryption(MasterKeyRequest)will result in the union of all responses from the backing providers. Likewise,MasterKeyProvider.decryptDataKey(CryptoAlgorithm, Collection, Map)will succeed if and only if at least one backing provider can successfully decrypt theDataKeys.MasterKeyProvider.getDefaultProviderId()is delegated to the first backing provider.MasterKeyProvider.getMasterKey(String, String)will attempt to find the appropriate backing provider to return aMasterKey.
-
Method Summary
Modifier and TypeMethodDescriptionstatic <K extends MasterKey<K>>
MasterKeyProvider<K>buildMultiProvider(Class<K> masterKeyClass, List<? extends MasterKeyProvider<? extends K>> providers)static <K extends MasterKey<K>, P extends MasterKeyProvider<? extends K>>
MasterKeyProvider<K>buildMultiProvider(Class<K> masterKeyClass, P... providers)static MasterKeyProvider<?>buildMultiProvider(List<? extends MasterKeyProvider<?>> providers)static <P extends MasterKeyProvider<?>>
MasterKeyProvider<?>buildMultiProvider(P... providers)
-
Method Details
-
buildMultiProvider
public static <K extends MasterKey<K>> MasterKeyProvider<K> buildMultiProvider(Class<K> masterKeyClass, List<? extends MasterKeyProvider<? extends K>> providers) -
buildMultiProvider
@SafeVarargs public static <K extends MasterKey<K>, P extends MasterKeyProvider<? extends K>> MasterKeyProvider<K> buildMultiProvider(Class<K> masterKeyClass, P... providers) -
buildMultiProvider
public static MasterKeyProvider<?> buildMultiProvider(List<? extends MasterKeyProvider<?>> providers) -
buildMultiProvider
@SafeVarargs public static <P extends MasterKeyProvider<?>> MasterKeyProvider<?> buildMultiProvider(P... providers)
-