diff --git a/src/main/java/org/springframework/data/r2dbc/repository/query/Query.java b/src/main/java/org/springframework/data/r2dbc/repository/Query.java similarity index 91% rename from src/main/java/org/springframework/data/r2dbc/repository/query/Query.java rename to src/main/java/org/springframework/data/r2dbc/repository/Query.java index 4255fd9..431c122 100644 --- a/src/main/java/org/springframework/data/r2dbc/repository/query/Query.java +++ b/src/main/java/org/springframework/data/r2dbc/repository/Query.java @@ -1,5 +1,5 @@ /* - * Copyright 2018-2019 the original author or authors. + * Copyright 2019 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.data.r2dbc.repository.query; +package org.springframework.data.r2dbc.repository; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; diff --git a/src/main/java/org/springframework/data/r2dbc/repository/query/R2dbcQueryMethod.java b/src/main/java/org/springframework/data/r2dbc/repository/query/R2dbcQueryMethod.java index ce0162a..46928e8 100644 --- a/src/main/java/org/springframework/data/r2dbc/repository/query/R2dbcQueryMethod.java +++ b/src/main/java/org/springframework/data/r2dbc/repository/query/R2dbcQueryMethod.java @@ -29,6 +29,7 @@ import org.springframework.data.domain.Sort; import org.springframework.data.mapping.context.MappingContext; import org.springframework.data.projection.ProjectionFactory; import org.springframework.data.r2dbc.repository.Modifying; +import org.springframework.data.r2dbc.repository.Query; import org.springframework.data.relational.core.mapping.RelationalPersistentEntity; import org.springframework.data.relational.core.mapping.RelationalPersistentProperty; import org.springframework.data.relational.repository.query.RelationalEntityMetadata; @@ -60,7 +61,7 @@ public class R2dbcQueryMethod extends QueryMethod { private final Method method; private final MappingContext, ? extends RelationalPersistentProperty> mappingContext; - private final Optional query; + private final Optional query; private final boolean modifying; private @Nullable RelationalEntityMetadata metadata; @@ -110,7 +111,8 @@ public class R2dbcQueryMethod extends QueryMethod { } this.method = method; - this.query = Optional.ofNullable(AnnotatedElementUtils.findMergedAnnotation(method, Query.class)); + this.query = Optional.ofNullable( + AnnotatedElementUtils.findMergedAnnotation(method, org.springframework.data.r2dbc.repository.Query.class)); this.modifying = AnnotatedElementUtils.hasAnnotation(method, Modifying.class); } @@ -207,14 +209,14 @@ public class R2dbcQueryMethod extends QueryMethod { } /** - * Returns the required query string declared in a {@link Query} annotation or throws {@link IllegalStateException} if - * neither the annotation found nor the attribute was specified. + * Returns the required query string declared in a {@link org.springframework.data.r2dbc.repository.Query} annotation + * or throws {@link IllegalStateException} if neither the annotation found nor the attribute was specified. * * @return the query string. * @throws IllegalStateException in case query method has no annotated query. */ public String getRequiredAnnotatedQuery() { - return this.query.map(Query::value) + return this.query.map(org.springframework.data.r2dbc.repository.Query::value) .orElseThrow(() -> new IllegalStateException("Query method " + this + " has no annotated query")); } @@ -223,12 +225,13 @@ public class R2dbcQueryMethod extends QueryMethod { * * @return the optional query annotation. */ - Optional getQueryAnnotation() { + Optional getQueryAnnotation() { return this.query; } /** - * @return {@literal true} if the {@link Method} is annotated with {@link Query}. + * @return {@literal true} if the {@link Method} is annotated with + * {@link org.springframework.data.r2dbc.repository.Query}. */ public boolean hasAnnotatedQuery() { return getQueryAnnotation().isPresent(); diff --git a/src/main/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQuery.java b/src/main/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQuery.java index a8799ed..6cf6f8d 100644 --- a/src/main/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQuery.java +++ b/src/main/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQuery.java @@ -23,6 +23,7 @@ import java.util.regex.Pattern; import org.springframework.data.r2dbc.convert.R2dbcConverter; import org.springframework.data.r2dbc.core.DatabaseClient; import org.springframework.data.r2dbc.core.DatabaseClient.BindSpec; +import org.springframework.data.r2dbc.repository.Query; import org.springframework.data.relational.repository.query.RelationalParameterAccessor; import org.springframework.data.repository.query.Parameter; import org.springframework.data.repository.query.Parameters; diff --git a/src/test/java/org/springframework/data/r2dbc/config/H2IntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/config/H2IntegrationTests.java index aa00561..3d1cacd 100644 --- a/src/test/java/org/springframework/data/r2dbc/config/H2IntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/config/H2IntegrationTests.java @@ -33,8 +33,8 @@ import org.springframework.context.annotation.FilterType; import org.springframework.dao.DataAccessException; import org.springframework.data.annotation.Id; import org.springframework.data.r2dbc.core.DatabaseClient; +import org.springframework.data.r2dbc.repository.Query; import org.springframework.data.r2dbc.repository.config.EnableR2dbcRepositories; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.testing.H2TestSupport; import org.springframework.data.relational.core.mapping.Table; import org.springframework.data.repository.reactive.ReactiveCrudRepository; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/AbstractR2dbcRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/repository/AbstractR2dbcRepositoryIntegrationTests.java index 57a9ea5..ea4eca4 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/AbstractR2dbcRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/AbstractR2dbcRepositoryIntegrationTests.java @@ -41,7 +41,6 @@ import org.springframework.dao.DataAccessException; import org.springframework.data.annotation.Id; import org.springframework.data.annotation.PersistenceConstructor; import org.springframework.data.r2dbc.connectionfactory.R2dbcTransactionManager; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.repository.support.R2dbcRepositoryFactory; import org.springframework.data.r2dbc.testing.R2dbcIntegrationTestSupport; import org.springframework.data.relational.core.mapping.Table; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/H2R2dbcRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/repository/H2R2dbcRepositoryIntegrationTests.java index 5f1f171..0930b45 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/H2R2dbcRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/H2R2dbcRepositoryIntegrationTests.java @@ -32,7 +32,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.data.r2dbc.config.AbstractR2dbcConfiguration; import org.springframework.data.r2dbc.repository.config.EnableR2dbcRepositories; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.repository.support.R2dbcRepositoryFactory; import org.springframework.data.r2dbc.testing.H2TestSupport; import org.springframework.test.context.ContextConfiguration; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/JasyncMySqlR2dbcRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/repository/JasyncMySqlR2dbcRepositoryIntegrationTests.java index 7a13c0d..96eb2af 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/JasyncMySqlR2dbcRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/JasyncMySqlR2dbcRepositoryIntegrationTests.java @@ -16,13 +16,13 @@ package org.springframework.data.r2dbc.repository; import io.r2dbc.spi.ConnectionFactory; -import org.junit.Ignore; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import javax.sql.DataSource; import org.junit.ClassRule; +import org.junit.Ignore; import org.junit.runner.RunWith; import org.springframework.context.annotation.Bean; @@ -31,7 +31,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.data.r2dbc.config.AbstractR2dbcConfiguration; import org.springframework.data.r2dbc.repository.config.EnableR2dbcRepositories; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.repository.support.R2dbcRepositoryFactory; import org.springframework.data.r2dbc.testing.ExternalDatabase; import org.springframework.data.r2dbc.testing.MySqlTestSupport; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/MySqlR2dbcRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/repository/MySqlR2dbcRepositoryIntegrationTests.java index a9e53da..76ec02f 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/MySqlR2dbcRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/MySqlR2dbcRepositoryIntegrationTests.java @@ -30,7 +30,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.data.r2dbc.config.AbstractR2dbcConfiguration; import org.springframework.data.r2dbc.repository.config.EnableR2dbcRepositories; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.repository.support.R2dbcRepositoryFactory; import org.springframework.data.r2dbc.testing.ExternalDatabase; import org.springframework.data.r2dbc.testing.MySqlTestSupport; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/PostgresR2dbcRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/repository/PostgresR2dbcRepositoryIntegrationTests.java index 3c70489..474b1a5 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/PostgresR2dbcRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/PostgresR2dbcRepositoryIntegrationTests.java @@ -30,7 +30,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.data.r2dbc.config.AbstractR2dbcConfiguration; import org.springframework.data.r2dbc.repository.config.EnableR2dbcRepositories; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.repository.support.R2dbcRepositoryFactory; import org.springframework.data.r2dbc.testing.ExternalDatabase; import org.springframework.data.r2dbc.testing.PostgresTestSupport; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/SqlServerR2dbcRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/r2dbc/repository/SqlServerR2dbcRepositoryIntegrationTests.java index 4442e3a..51dfa6a 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/SqlServerR2dbcRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/SqlServerR2dbcRepositoryIntegrationTests.java @@ -31,7 +31,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.data.r2dbc.config.AbstractR2dbcConfiguration; import org.springframework.data.r2dbc.repository.config.EnableR2dbcRepositories; -import org.springframework.data.r2dbc.repository.query.Query; import org.springframework.data.r2dbc.repository.support.R2dbcRepositoryFactory; import org.springframework.data.r2dbc.testing.ExternalDatabase; import org.springframework.data.r2dbc.testing.SqlServerTestSupport; diff --git a/src/test/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQueryUnitTests.java b/src/test/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQueryUnitTests.java index 9e3aa62..9053a0a 100644 --- a/src/test/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQueryUnitTests.java +++ b/src/test/java/org/springframework/data/r2dbc/repository/query/StringBasedR2dbcQueryUnitTests.java @@ -32,6 +32,7 @@ import org.springframework.data.projection.SpelAwareProxyProjectionFactory; import org.springframework.data.r2dbc.convert.MappingR2dbcConverter; import org.springframework.data.r2dbc.core.DatabaseClient; import org.springframework.data.r2dbc.core.DatabaseClient.GenericExecuteSpec; +import org.springframework.data.r2dbc.repository.Query; import org.springframework.data.relational.core.mapping.RelationalMappingContext; import org.springframework.data.repository.Repository; import org.springframework.data.repository.core.RepositoryMetadata; @@ -140,16 +141,16 @@ public class StringBasedR2dbcQueryUnitTests { @SuppressWarnings("unused") private interface SampleRepository extends Repository { - @Query("SELECT * FROM person WHERE lastname = $1") + @org.springframework.data.r2dbc.repository.Query("SELECT * FROM person WHERE lastname = $1") Person findByLastname(String lastname); - @Query("SELECT * FROM person WHERE lastname = :lastname") + @org.springframework.data.r2dbc.repository.Query("SELECT * FROM person WHERE lastname = :lastname") Person findByNamedParameter(@Param("lastname") String lastname); @Query("SELECT * FROM person WHERE lastname = :unknown") Person findNotByNamedBindMarker(String lastname); - @Query("SELECT * FROM person WHERE lastname = @lastname") + @org.springframework.data.r2dbc.repository.Query("SELECT * FROM person WHERE lastname = @lastname") Person findByNamedBindMarker(@Param("lastname") String lastname); }