[java-opensaml COMMIT] in /trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support: DataEncryp...
noreply at shibboleth.net
noreply at shibboleth.net
Wed Apr 2 15:39:16 EDT 2014
Author: putmanb
Date: Wed Apr 2 15:39:16 2014
New Revision: 3759
URL: http://svn.shibboleth.net/view/java-opensaml?rev=3759&view=rev
Log:
Add convenience constructors for copying data from EncryptionParameters instance.
Modified:
trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/DataEncryptionParameters.java
trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/KeyEncryptionParameters.java
Modified: trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/DataEncryptionParameters.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/DataEncryptionParameters.java?rev=3759&r1=3758&r2=3759&view=diff
==============================================================================
--- trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/DataEncryptionParameters.java (original)
+++ trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/DataEncryptionParameters.java Wed Apr 2 15:39:16 2014
@@ -17,9 +17,13 @@
package org.opensaml.xmlsec.encryption.support;
+import javax.annotation.Nonnull;
import javax.annotation.Nullable;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
import org.opensaml.security.credential.Credential;
+import org.opensaml.xmlsec.EncryptionParameters;
import org.opensaml.xmlsec.keyinfo.KeyInfoGenerator;
/**
@@ -43,6 +47,20 @@
public DataEncryptionParameters() {
// This will be the default for auto encryption key generation
setAlgorithm(EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES256);
+ }
+
+ /**
+ * Convenience constructor which allows copying the relevant data encryption parameters from
+ * an instance of {@link EncryptionParameters}.
+ *
+ * @param params the encryption parameters instance
+ */
+ public DataEncryptionParameters(@Nonnull final EncryptionParameters params) {
+ this();
+ Constraint.isNotNull(params, "EncryptionParameters instance was null");
+ setEncryptionCredential(params.getDataEncryptionCredential());
+ setAlgorithm(params.getDataEncryptionAlgorithmURI());
+ setKeyInfoGenerator(params.getDataKeyInfoGenerator());
}
/**
Modified: trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/KeyEncryptionParameters.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/KeyEncryptionParameters.java?rev=3759&r1=3758&r2=3759&view=diff
==============================================================================
--- trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/KeyEncryptionParameters.java (original)
+++ trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/KeyEncryptionParameters.java Wed Apr 2 15:39:16 2014
@@ -19,6 +19,10 @@
import javax.annotation.Nullable;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
+import org.opensaml.xmlsec.EncryptionParameters;
+
/**
* Parameters for encrypting keys.
@@ -37,6 +41,22 @@
// can't autogenerate a key encryption key, always needs to be derived
// from the key in the (for KEK, mandatory) encryption credential.
setAlgorithm(null);
+ }
+
+ /**
+ * Convenience constructor which allows copying the relevant key encryption parameters from
+ * an instance of {@link EncryptionParameters}.
+ *
+ * @param params the encryption parameters instance
+ * @param recipientId the recipient of the key
+ */
+ public KeyEncryptionParameters(EncryptionParameters params, String recipientId) {
+ this();
+ Constraint.isNotNull(params, "EncryptionParameters instance was null");
+ setEncryptionCredential(params.getKeyTransportEncryptionCredential());
+ setAlgorithm(params.getKeyTransportEncryptionAlgorithmURI());
+ setKeyInfoGenerator(params.getKeyTransportKeyInfoGenerator());
+ setRecipient(recipientId);
}
/**
More information about the commits
mailing list