You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2014/03/17 12:48:45 UTC
svn commit: r1578321 - in /cayenne/main/trunk/cayenne-crypto/src:
main/java/org/apache/cayenne/crypto/
main/java/org/apache/cayenne/crypto/batch/
main/java/org/apache/cayenne/crypto/cipher/
test/java/org/apache/cayenne/crypto/ test/java/org/apache/caye...
Author: aadamchik
Date: Mon Mar 17 11:48:44 2014
New Revision: 1578321
URL: http://svn.apache.org/r1578321
Log:
CAY-1916 cayenne-crypto module that enables data encryption for certain model attributes
renaming CipherService to CryptoHandler
Added:
cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CryptoHandler.java
- copied, changed from r1578320, cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CipherService.java
Removed:
cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CipherService.java
Modified:
cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/CryptoModuleBuilder.java
cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/batch/CryptoBatchTranslatorFactoryDecorator.java
cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/Crypto_InRuntime_Test.java
cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/unit/Rot13CipherService.java
Modified: cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/CryptoModuleBuilder.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/CryptoModuleBuilder.java?rev=1578321&r1=1578320&r2=1578321&view=diff
==============================================================================
--- cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/CryptoModuleBuilder.java (original)
+++ cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/CryptoModuleBuilder.java Mon Mar 17 11:48:44 2014
@@ -20,7 +20,8 @@ package org.apache.cayenne.crypto;
import org.apache.cayenne.access.translator.batch.BatchTranslatorFactory;
import org.apache.cayenne.crypto.batch.CryptoBatchTranslatorFactoryDecorator;
-import org.apache.cayenne.crypto.cipher.CipherService;
+import org.apache.cayenne.crypto.cipher.CryptoHandler;
+import org.apache.cayenne.crypto.map.ColumnMapper;
import org.apache.cayenne.di.Binder;
import org.apache.cayenne.di.Module;
@@ -34,24 +35,33 @@ import org.apache.cayenne.di.Module;
*/
public class CryptoModuleBuilder {
- private Class<? extends CipherService> cipherServiceType;
+ private Class<? extends CryptoHandler> cryptoHandlerType;
+ private Class<? extends ColumnMapper> columnMapperType;
- public CryptoModuleBuilder cipherService(Class<? extends CipherService> cipherServiceType) {
- this.cipherServiceType = cipherServiceType;
+ public CryptoModuleBuilder cryptoHandler(Class<? extends CryptoHandler> cryptoHandlerType) {
+ this.cryptoHandlerType = cryptoHandlerType;
return this;
}
+ /**
+ * Produces a module that can be used to start Cayenne runtime.
+ */
public Module build() {
- if (cipherServiceType == null) {
- throw new IllegalStateException("'CipherService' is not initialized");
+ if (cryptoHandlerType == null) {
+ throw new IllegalStateException("'CryptoHandler' is not initialized");
+ }
+
+ if (columnMapperType == null) {
+ throw new IllegalStateException("'ColumnMapper' is not initialized");
}
return new Module() {
@Override
public void configure(Binder binder) {
- binder.bind(CipherService.class).to(cipherServiceType);
+ binder.bind(CryptoHandler.class).to(cryptoHandlerType);
+ binder.bind(ColumnMapper.class).to(columnMapperType);
binder.decorate(BatchTranslatorFactory.class).after(CryptoBatchTranslatorFactoryDecorator.class);
}
};
Modified: cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/batch/CryptoBatchTranslatorFactoryDecorator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/batch/CryptoBatchTranslatorFactoryDecorator.java?rev=1578321&r1=1578320&r2=1578321&view=diff
==============================================================================
--- cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/batch/CryptoBatchTranslatorFactoryDecorator.java (original)
+++ cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/batch/CryptoBatchTranslatorFactoryDecorator.java Mon Mar 17 11:48:44 2014
@@ -24,7 +24,7 @@ import java.util.List;
import org.apache.cayenne.access.translator.batch.BatchParameterBinding;
import org.apache.cayenne.access.translator.batch.BatchTranslator;
import org.apache.cayenne.access.translator.batch.BatchTranslatorFactory;
-import org.apache.cayenne.crypto.cipher.CipherService;
+import org.apache.cayenne.crypto.cipher.CryptoHandler;
import org.apache.cayenne.crypto.map.ColumnMapper;
import org.apache.cayenne.dba.DbAdapter;
import org.apache.cayenne.di.Inject;
@@ -36,12 +36,12 @@ import org.apache.cayenne.query.BatchQue
*/
public class CryptoBatchTranslatorFactoryDecorator implements BatchTranslatorFactory {
- private CipherService cipherService;
+ private CryptoHandler cipherService;
private ColumnMapper columnMapper;
private BatchTranslatorFactory delegate;
public CryptoBatchTranslatorFactoryDecorator(@Inject BatchTranslatorFactory delegate,
- @Inject CipherService cipherService, @Inject ColumnMapper columnMapper) {
+ @Inject CryptoHandler cipherService, @Inject ColumnMapper columnMapper) {
this.columnMapper = columnMapper;
this.cipherService = cipherService;
Copied: cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CryptoHandler.java (from r1578320, cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CipherService.java)
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CryptoHandler.java?p2=cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CryptoHandler.java&p1=cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CipherService.java&r1=1578320&r2=1578321&rev=1578321&view=diff
==============================================================================
--- cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CipherService.java (original)
+++ cayenne/main/trunk/cayenne-crypto/src/main/java/org/apache/cayenne/crypto/cipher/CryptoHandler.java Mon Mar 17 11:48:44 2014
@@ -21,7 +21,7 @@ package org.apache.cayenne.crypto.cipher
/**
* @since 3.2
*/
-public interface CipherService {
+public interface CryptoHandler {
Object encrypt(Object plaintext, int jdbcType);
Modified: cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/Crypto_InRuntime_Test.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/Crypto_InRuntime_Test.java?rev=1578321&r1=1578320&r2=1578321&view=diff
==============================================================================
--- cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/Crypto_InRuntime_Test.java (original)
+++ cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/Crypto_InRuntime_Test.java Mon Mar 17 11:48:44 2014
@@ -42,7 +42,7 @@ public class Crypto_InRuntime_Test exten
@Override
protected void setUp() throws Exception {
- Module crypto = new CryptoModuleBuilder().cipherService(Rot13CipherService.class).build();
+ Module crypto = new CryptoModuleBuilder().cryptoHandler(Rot13CipherService.class).build();
this.runtime = new ServerRuntime("cayenne-crypto.xml", crypto);
Modified: cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/unit/Rot13CipherService.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/unit/Rot13CipherService.java?rev=1578321&r1=1578320&r2=1578321&view=diff
==============================================================================
--- cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/unit/Rot13CipherService.java (original)
+++ cayenne/main/trunk/cayenne-crypto/src/test/java/org/apache/cayenne/crypto/unit/Rot13CipherService.java Mon Mar 17 11:48:44 2014
@@ -20,9 +20,9 @@ package org.apache.cayenne.crypto.unit;
import java.io.UnsupportedEncodingException;
-import org.apache.cayenne.crypto.cipher.CipherService;
+import org.apache.cayenne.crypto.cipher.CryptoHandler;
-public class Rot13CipherService implements CipherService {
+public class Rot13CipherService implements CryptoHandler {
public static String rotate(String value) {
if (value == null) {