From a0d64493e02f92b7c8a461bd132a37c108e06307 Mon Sep 17 00:00:00 2001 From: Michael Reiche <48999328+mikereiche@users.noreply.github.com> Date: Mon, 17 Oct 2022 13:17:15 -1000 Subject: [PATCH] Get encrypterAlias from annotation. (#1598) Closes #1597. --- .../data/couchbase/core/convert/CryptoConverter.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/springframework/data/couchbase/core/convert/CryptoConverter.java b/src/main/java/org/springframework/data/couchbase/core/convert/CryptoConverter.java index 8b16468d..70012246 100644 --- a/src/main/java/org/springframework/data/couchbase/core/convert/CryptoConverter.java +++ b/src/main/java/org/springframework/data/couchbase/core/convert/CryptoConverter.java @@ -16,8 +16,6 @@ package org.springframework.data.couchbase.core.convert; import java.nio.charset.StandardCharsets; -import java.util.LinkedList; -import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Optional; @@ -29,7 +27,6 @@ import org.springframework.data.convert.CustomConversions; import org.springframework.data.convert.PropertyValueConverter; import org.springframework.data.convert.ValueConversionContext; import org.springframework.data.couchbase.core.mapping.CouchbaseDocument; -import org.springframework.data.couchbase.core.mapping.CouchbasePersistentEntity; import org.springframework.data.couchbase.core.mapping.CouchbasePersistentProperty; import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.model.ConvertingPropertyAccessor; @@ -37,6 +34,7 @@ import org.springframework.util.Assert; import com.couchbase.client.core.encryption.CryptoManager; import com.couchbase.client.core.error.InvalidArgumentException; +import com.couchbase.client.java.encryption.annotation.Encrypted; import com.couchbase.client.java.json.JsonArray; import com.couchbase.client.java.json.JsonObject; import com.couchbase.client.java.json.JsonValue; @@ -70,7 +68,7 @@ public class CryptoConverter implements CouchbaseConversionContext ctx = (CouchbaseConversionContext) context; CouchbasePersistentProperty property = ctx.getProperty(); byte[] plainText = coerceToBytesWrite(property, ctx.getAccessor(), ctx); - Map encrypted = cryptoManager().encrypt(plainText, CryptoManager.DEFAULT_ENCRYPTER_ALIAS); + Map encrypted = cryptoManager().encrypt(plainText, ctx.getProperty().findAnnotation(Encrypted.class).encrypter()); return new CouchbaseDocument().setContent(encrypted); }