@@ -1,5 +1,5 @@
|
||||
# Java versions
|
||||
java.main.tag=17.0.15_6-jdk-focal
|
||||
java.main.tag=24.0.1_9-jdk-noble
|
||||
java.next.tag=24.0.1_9-jdk-noble
|
||||
|
||||
# Docker container images - standard
|
||||
|
||||
7
pom.xml
7
pom.xml
@@ -18,7 +18,7 @@
|
||||
</parent>
|
||||
|
||||
<properties>
|
||||
<couchbase>3.7.8</couchbase>
|
||||
<couchbase>3.8.0</couchbase>
|
||||
<springdata.commons>4.0.0-SNAPSHOT</springdata.commons>
|
||||
<java-module-name>spring.data.couchbase</java-module-name>
|
||||
<hibernate.validator>7.0.1.Final</hibernate.validator>
|
||||
@@ -44,9 +44,6 @@
|
||||
<dependencies>
|
||||
|
||||
<dependency>
|
||||
<!--
|
||||
<groupId>io.github.openfeign.querydsl</groupId>
|
||||
-->
|
||||
<groupId>io.github.openfeign.querydsl</groupId>
|
||||
<artifactId>querydsl-apt</artifactId>
|
||||
<version>${querydsl_of}</version>
|
||||
@@ -348,7 +345,7 @@
|
||||
</profiles>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<repository>
|
||||
<id>spring-snapshot</id>
|
||||
<url>https://repo.spring.io/snapshot</url>
|
||||
<snapshots>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[[couchbase.fieldlevelencryption]]
|
||||
= Couchbase Field Level Encryption
|
||||
= Couchbase Field Level Encrytpion
|
||||
|
||||
Couchbase supports https://docs.couchbase.com/java-sdk/current/howtos/encrypting-using-sdk.html[Field Level Encryption]. This section documents how to use it with Spring Data Couchbase.
|
||||
|
||||
@@ -57,8 +57,8 @@ protected CryptoManager cryptoManager() {
|
||||
|
||||
1. @Encrypted defines a field as encrypted.
|
||||
2. @Encrypted(migration = Encrypted.Migration.FROM_UNENCRYPTED) defines a field that may or may not be encrypted when read. It will be encrypted when written.
|
||||
3. @Encrypted(encrypter = "<encrypterAlias>") specifies the alias of the encrypter to use for encryption. Note this is not the algorithm, but the name specified when adding the encrypter to the CryptoManager.
|
||||
|
||||
3. @Encrypted(encrypter = "<encrypterAlias>") specifies the alias of the encrypter to use for encryption. Note this is not the algorithm, but the name specified when adding the encrypter to the CryptoManager.
|
||||
|
||||
[[example]]
|
||||
=== Example
|
||||
.AbstractCouchbaseConfiguration
|
||||
@@ -77,7 +77,7 @@ static class Config extends AbstractCouchbaseConfiguration {
|
||||
@Override public String getBucketName() { /* ... */ }
|
||||
|
||||
/* provide a cryptoManager */
|
||||
@Override
|
||||
@Override
|
||||
protected CryptoManager cryptoManager() {
|
||||
KeyStore javaKeyStore = KeyStore.getInstance("MyKeyStoreType");
|
||||
FileInputStream fis = new java.io.FileInputStream("keyStoreName");
|
||||
|
||||
@@ -74,8 +74,6 @@ public class FindMethod {
|
||||
continue;
|
||||
if(params[j] == boolean.class && parameterTypes[j] == Boolean.class )
|
||||
continue;
|
||||
if(parameterTypes[j] == null && Object.class.isAssignableFrom(params[j])) // any non-primitive
|
||||
continue;
|
||||
if (!params[j].isAssignableFrom(parameterTypes[j]))
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ package org.springframework.data.couchbase.repository;
|
||||
import static java.util.Arrays.asList;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertFalse;
|
||||
import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
import static org.junit.jupiter.api.Assertions.assertThrows;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
|
||||
@@ -142,20 +141,7 @@ public class ReactiveCouchbaseRepositoryQueryIntegrationTests extends JavaIntegr
|
||||
Airport airport1 = reactiveAirportRepository.findById(airports.get(0).getId()).block();
|
||||
assertEquals(airport1.getIata(), vie.getIata());
|
||||
Airport airport2 = reactiveAirportRepository.findByIata(airports.get(0).getIata()).block();
|
||||
assertEquals(airport2.getId(), vie.getId());
|
||||
} finally {
|
||||
reactiveAirportRepository.delete(vie).block();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
void testNullParamToDyanmicProxyable() {
|
||||
Airport vie = null;
|
||||
try {
|
||||
vie = new Airport("airports::vie", "vie", "low2");
|
||||
reactiveAirportRepository.save(vie).block();
|
||||
Airport airport2 = reactiveAirportRepository.withCollection("_default").findByIata(null).block();
|
||||
assertNull(airport2);
|
||||
assertEquals(airport1.getId(), vie.getId());
|
||||
} finally {
|
||||
reactiveAirportRepository.delete(vie).block();
|
||||
}
|
||||
|
||||
@@ -45,10 +45,8 @@ import org.springframework.data.couchbase.core.CouchbaseTemplate;
|
||||
import org.springframework.data.couchbase.core.mapping.event.ValidatingCouchbaseEventListener;
|
||||
import org.springframework.data.couchbase.core.query.QueryCriteriaDefinition;
|
||||
import org.springframework.data.couchbase.domain.Airline;
|
||||
import org.springframework.data.couchbase.domain.AirlineCollectioned;
|
||||
import org.springframework.data.couchbase.domain.AirlineRepository;
|
||||
import org.springframework.data.couchbase.domain.QAirline;
|
||||
import org.springframework.data.couchbase.domain.QAirlineCollectioned;
|
||||
import org.springframework.data.couchbase.repository.auditing.EnableCouchbaseAuditing;
|
||||
import org.springframework.data.couchbase.repository.auditing.EnableReactiveCouchbaseAuditing;
|
||||
import org.springframework.data.couchbase.repository.config.EnableCouchbaseRepositories;
|
||||
@@ -432,7 +430,7 @@ public class CouchbaseRepositoryQuerydslIntegrationTests extends JavaIntegration
|
||||
assertEquals(" WHERE name in $1", bq(predicate));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
void testSort(){
|
||||
{
|
||||
@@ -497,7 +495,7 @@ public class CouchbaseRepositoryQuerydslIntegrationTests extends JavaIntegration
|
||||
"Order of airlines does not match");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Test
|
||||
void testNotIn() {
|
||||
|
||||
Reference in New Issue
Block a user