Skip to content

Commit 76d1604

Browse files
baniakjrrashtao
andauthored
fix: Spring-boot 3.3.0 (#306)
* fix: Spring-boot 3.3.0 fixing errors in creating parameters caused be changes and removal of deprecations * fix: Spring-boot 3.3.0 change return type to more specific ArangoParameters * review * fixing CI * deps upd * tests fix --------- Co-authored-by: Michele Rastelli <michele@arangodb.com>
1 parent 7e6c16c commit 76d1604

File tree

7 files changed

+20
-34
lines changed

7 files changed

+20
-34
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,5 +195,5 @@ workflows:
195195
matrix:
196196
parameters:
197197
spring-boot-version:
198-
- '3.1.8'
199198
- '3.2.6'
199+
- '3.3.0'

.github/workflows/maven-deploy.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ jobs:
1414
fail-fast: false
1515

1616
steps:
17-
- uses: actions/checkout@v3
17+
- uses: actions/checkout@v4
1818
- name: Set up JDK
19-
uses: actions/setup-java@v3
19+
uses: actions/setup-java@v4
2020
with:
2121
java-version: '17'
2222
distribution: 'adopt'

.github/workflows/maven-release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ jobs:
1414
fail-fast: false
1515

1616
steps:
17-
- uses: actions/checkout@v3
17+
- uses: actions/checkout@v4
1818
- name: Set up JDK
19-
uses: actions/setup-java@v3
19+
uses: actions/setup-java@v4
2020
with:
2121
java-version: '17'
2222
distribution: 'adopt'

integration-tests/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>org.springframework.boot</groupId>
77
<artifactId>spring-boot-starter-parent</artifactId>
8-
<version>3.2.6</version>
8+
<version>3.3.0</version>
99
<relativePath/>
1010
</parent>
1111

pom.xml

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<parent>
1212
<groupId>org.springframework.data.build</groupId>
1313
<artifactId>spring-data-parent</artifactId>
14-
<version>3.2.2</version>
14+
<version>3.3.0</version>
1515
<relativePath/>
1616
</parent>
1717

@@ -65,7 +65,7 @@
6565
<arangodb.version>7.7.1</arangodb.version>
6666

6767
<!-- enforce dependencies convergence -->
68-
<slf4j>2.0.11</slf4j>
68+
<slf4j>2.0.13</slf4j>
6969
</properties>
7070

7171
<build>
@@ -163,18 +163,6 @@
163163
</configuration>
164164
</plugin>
165165

166-
<plugin>
167-
<groupId>org.apache.maven.plugins</groupId>
168-
<artifactId>maven-source-plugin</artifactId>
169-
<executions>
170-
<execution>
171-
<goals>
172-
<goal>jar</goal>
173-
</goals>
174-
</execution>
175-
</executions>
176-
</plugin>
177-
178166
<plugin>
179167
<groupId>org.apache.maven.plugins</groupId>
180168
<artifactId>maven-javadoc-plugin</artifactId>
@@ -266,7 +254,7 @@
266254
<dependency>
267255
<groupId>com.arangodb</groupId>
268256
<artifactId>jackson-dataformat-velocypack</artifactId>
269-
<version>4.2.0</version>
257+
<version>4.3.0</version>
270258
<scope>test</scope>
271259
</dependency>
272260
<dependency>

src/main/java/com/arangodb/springframework/repository/query/ArangoParameters.java

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@
3535
import org.springframework.core.MethodParameter;
3636
import org.springframework.data.repository.query.Parameter;
3737
import org.springframework.data.repository.query.Parameters;
38+
import org.springframework.data.repository.query.ParametersSource;
39+
import org.springframework.data.util.TypeInformation;
3840
import org.springframework.util.Assert;
3941

4042
import com.arangodb.model.AqlQueryOptions;
@@ -52,13 +54,13 @@ public class ArangoParameters extends Parameters<ArangoParameters, ArangoParamet
5254
private final int queryOptionsIndex;
5355
private final int bindVarsIndex;
5456

55-
public ArangoParameters(final Method method) {
56-
super(method);
57+
public ArangoParameters(final ParametersSource parametersSource) {
58+
super(parametersSource, ArangoParameter::new);
5759
assertSingleSpecialParameter(ArangoParameter::isQueryOptions,
58-
"Multiple AqlQueryOptions parameters are not allowed! Offending method: " + method);
60+
"Multiple AqlQueryOptions parameters are not allowed! Offending method: " + parametersSource.getMethod());
5961
assertSingleSpecialParameter(ArangoParameter::isBindVars,
60-
"Multiple @BindVars parameters are not allowed! Offending method: " + method);
61-
assertNonDuplicateParamNames(method);
62+
"Multiple @BindVars parameters are not allowed! Offending method: " + parametersSource.getMethod());
63+
assertNonDuplicateParamNames(parametersSource.getMethod());
6264
this.queryOptionsIndex = getIndexOfSpecialParameter(ArangoParameter::isQueryOptions);
6365
this.bindVarsIndex = getIndexOfSpecialParameter(ArangoParameter::isBindVars);
6466
}
@@ -70,11 +72,6 @@ private ArangoParameters(final List<ArangoParameter> parameters, final int query
7072
this.bindVarsIndex = bindVarsIndex;
7173
}
7274

73-
@Override
74-
protected ArangoParameter createParameter(final MethodParameter parameter) {
75-
return new ArangoParameter(parameter);
76-
}
77-
7875
@Override
7976
protected ArangoParameters createFrom(final List<ArangoParameter> parameters) {
8077
return new ArangoParameters(parameters, this.queryOptionsIndex, this.bindVarsIndex);
@@ -141,7 +138,7 @@ static class ArangoParameter extends Parameter {
141138
private final MethodParameter parameter;
142139

143140
public ArangoParameter(final MethodParameter parameter) {
144-
super(parameter);
141+
super(parameter, TypeInformation.of(ArangoParameter.class));
145142
this.parameter = parameter;
146143
assertCorrectBindParamPattern();
147144
assertCorrectBindVarsType();

src/main/java/com/arangodb/springframework/repository/query/ArangoQueryMethod.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
import org.springframework.data.geo.GeoResults;
3232
import org.springframework.data.projection.ProjectionFactory;
3333
import org.springframework.data.repository.core.RepositoryMetadata;
34+
import org.springframework.data.repository.query.ParametersSource;
3435
import org.springframework.data.repository.query.QueryMethod;
3536
import org.springframework.data.util.TypeInformation;
3637
import org.springframework.util.StringUtils;
@@ -65,8 +66,8 @@ public ArangoParameters getParameters() {
6566
}
6667

6768
@Override
68-
public ArangoParameters createParameters(final Method method) {
69-
return new ArangoParameters(method);
69+
protected ArangoParameters createParameters(ParametersSource parametersSource) {
70+
return new ArangoParameters(parametersSource);
7071
}
7172

7273
public boolean hasAnnotatedQuery() {

0 commit comments

Comments
 (0)