1818
1919import static com .couchbase .client .java .ClusterOptions .clusterOptions ;
2020
21- import java .util .ArrayList ;
21+ import java .util .Collections ;
2222import java .util .HashSet ;
23- import java .util .List ;
2423import java .util .Set ;
2524
2625import org .springframework .beans .factory .config .BeanDefinition ;
2726import org .springframework .context .annotation .Bean ;
2827import org .springframework .context .annotation .ClassPathScanningCandidateComponentProvider ;
2928import org .springframework .context .annotation .Configuration ;
3029import org .springframework .context .annotation .Role ;
31- import org .springframework .core .convert .converter .GenericConverter ;
3230import org .springframework .core .type .filter .AnnotationTypeFilter ;
3331import org .springframework .data .convert .CustomConversions ;
3432import org .springframework .data .couchbase .CouchbaseClientFactory ;
3735import org .springframework .data .couchbase .core .ReactiveCouchbaseTemplate ;
3836import org .springframework .data .couchbase .core .convert .CouchbaseCustomConversions ;
3937import org .springframework .data .couchbase .core .convert .MappingCouchbaseConverter ;
40- import org .springframework .data .couchbase .core .convert .OtherConverters ;
4138import org .springframework .data .couchbase .core .convert .translation .JacksonTranslationService ;
4239import org .springframework .data .couchbase .core .convert .translation .TranslationService ;
4340import org .springframework .data .couchbase .core .mapping .CouchbaseMappingContext ;
@@ -152,9 +149,7 @@ public ClusterEnvironment couchbaseClusterEnvironment() {
152149 if (!nonShadowedJacksonPresent ()) {
153150 throw new CouchbaseException ("non-shadowed Jackson not present" );
154151 }
155- CryptoManager cryptoManager = cryptoManager ();
156- builder .jsonSerializer (JacksonJsonSerializer .create (couchbaseObjectMapper (cryptoManager )));
157- builder .cryptoManager (cryptoManager );
152+ builder .jsonSerializer (JacksonJsonSerializer .create (couchbaseObjectMapper ()));
158153 configureEnvironment (builder );
159154 return builder .build ();
160155 }
@@ -285,8 +280,8 @@ public MappingCouchbaseConverter mappingCouchbaseConverter(CouchbaseMappingConte
285280 @ Bean
286281 public TranslationService couchbaseTranslationService () {
287282 final JacksonTranslationService jacksonTranslationService = new JacksonTranslationService ();
288- jacksonTranslationService .setObjectMapper (couchbaseObjectMapper (cryptoManager ()));
289283 jacksonTranslationService .afterPropertiesSet ();
284+
290285 // for sdk3, we need to ask the mapper _it_ uses to ignore extra fields...
291286 JacksonTransformers .MAPPER .configure (DeserializationFeature .FAIL_ON_UNKNOWN_PROPERTIES , false );
292287 return jacksonTranslationService ;
@@ -313,25 +308,10 @@ public CouchbaseMappingContext couchbaseMappingContext(CustomConversions customC
313308 */
314309
315310 public ObjectMapper couchbaseObjectMapper () {
316- return couchbaseObjectMapper (cryptoManager ());
317- }
318-
319- /**
320- * Creates a {@link ObjectMapper} for the jsonSerializer of the ClusterEnvironment
321- *
322- * @param cryptoManager
323- * @return ObjectMapper
324- */
325-
326- ObjectMapper mapper ;
327-
328- public ObjectMapper couchbaseObjectMapper (CryptoManager cryptoManager ) {
329- if (mapper != null ) {
330- return mapper ;
331- }
332- mapper = new ObjectMapper (); // or use the one from the Java SDK (?) JacksonTransformers.MAPPER
311+ ObjectMapper mapper = new ObjectMapper ();
333312 mapper .configure (com .fasterxml .jackson .databind .DeserializationFeature .FAIL_ON_UNKNOWN_PROPERTIES , false );
334313 mapper .registerModule (new JsonValueModule ());
314+ CryptoManager cryptoManager = null ;
335315 if (cryptoManager != null ) {
336316 mapper .registerModule (new EncryptionModule (cryptoManager ));
337317 }
@@ -340,7 +320,7 @@ public ObjectMapper couchbaseObjectMapper(CryptoManager cryptoManager) {
340320
341321 /**
342322 * The default blocking transaction manager. It is an implementation of CallbackPreferringTransactionManager
343- * CallbackPreferringTransactionManagers do not play well with test-cases that rely
323+ * CallbackPreferrringTransactionmanagers do not play well with test-cases that rely
344324 * on @TestTransaction/@BeforeTransaction/@AfterTransaction
345325 *
346326 * @param clientFactory
@@ -361,7 +341,6 @@ CouchbaseCallbackTransactionManager couchbaseTransactionManager(CouchbaseClientF
361341 TransactionTemplate couchbaseTransactionTemplate (CouchbaseCallbackTransactionManager couchbaseTransactionManager ) {
362342 return new TransactionTemplate (couchbaseTransactionManager );
363343 }
364-
365344 /**
366345 * The default TransactionalOperator.
367346 *
@@ -400,28 +379,11 @@ protected boolean autoIndexCreation() {
400379 * and {@link #couchbaseMappingContext(CustomConversions)}. Returns an empty {@link CustomConversions} instance by
401380 * default.
402381 *
403- * @param cryptoManagerOptional optional cryptoManager. Make varargs for backwards compatibility.
404382 * @return must not be {@literal null}.
405383 */
406384 @ Bean (name = BeanNames .COUCHBASE_CUSTOM_CONVERSIONS )
407- public CustomConversions customConversions (CryptoManager ... cryptoManagerOptional ) {
408- assert (cryptoManagerOptional == null || cryptoManagerOptional .length <= 1 );
409- CryptoManager cryptoManager = cryptoManagerOptional != null && cryptoManagerOptional .length == 1
410- ? cryptoManagerOptional [0 ]
411- : null ;
412- List <GenericConverter > newConverters = new ArrayList ();
413- // the cryptoConverters take an argument, so they cannot be created in the
414- // static block of CouchbaseCustomConversions. And they must be set before the super() constructor
415- // in CouchbaseCustomerConversions
416- if (cryptoManager != null ) {
417- newConverters .addAll (OtherConverters .getCryptoConverters (cryptoManager ));
418- }
419- return new CouchbaseCustomConversions (newConverters );
420- }
421-
422- @ Bean
423- protected CryptoManager cryptoManager () {
424- return null ;
385+ public CustomConversions customConversions () {
386+ return new CouchbaseCustomConversions (Collections .emptyList ());
425387 }
426388
427389 /**
0 commit comments