Start building against Spring Data Moore M2 snapshots

See gh-15197
pull/13916/head
Andy Wilkinson 6 years ago
parent c25b1652dd
commit e924745bf8

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -16,8 +16,6 @@
package org.springframework.boot.autoconfigure.data.jdbc; package org.springframework.boot.autoconfigure.data.jdbc;
import java.util.Optional;
import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
@ -27,29 +25,28 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import; import org.springframework.context.annotation.Import;
import org.springframework.data.jdbc.core.convert.JdbcCustomConversions; import org.springframework.data.jdbc.repository.config.AbstractJdbcConfiguration;
import org.springframework.data.jdbc.repository.config.EnableJdbcRepositories; import org.springframework.data.jdbc.repository.config.EnableJdbcRepositories;
import org.springframework.data.jdbc.repository.config.JdbcConfiguration; import org.springframework.data.jdbc.repository.config.JdbcConfiguration;
import org.springframework.data.jdbc.repository.config.JdbcRepositoryConfigExtension; import org.springframework.data.jdbc.repository.config.JdbcRepositoryConfigExtension;
import org.springframework.data.relational.core.conversion.RelationalConverter;
import org.springframework.data.relational.core.mapping.NamingStrategy;
import org.springframework.data.relational.core.mapping.RelationalMappingContext;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations; import org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations;
/** /**
* {@link EnableAutoConfiguration Auto-configuration} for Spring Data's JDBC Repositories. * {@link EnableAutoConfiguration Auto-configuration} for Spring Data's JDBC Repositories.
* <p> * <p>
* Once in effect, the auto-configuration is the equivalent of enabling JDBC repositories * Once in effect, the auto-configuration is the equivalent of enabling JDBC repositories
* using the {@link EnableJdbcRepositories} annotation and providing a * using the {@link EnableJdbcRepositories} annotation and providing an
* {@link JdbcConfiguration} subclass. * {@link AbstractJdbcConfiguration} subclass.
* *
* @author Andy Wilkinson * @author Andy Wilkinson
* @since 2.1.0 * @since 2.1.0
* @see EnableJdbcRepositories * @see EnableJdbcRepositories
*/ */
@SuppressWarnings("deprecation")
@Configuration @Configuration
@ConditionalOnBean(NamedParameterJdbcOperations.class) @ConditionalOnBean(NamedParameterJdbcOperations.class)
@ConditionalOnClass({ NamedParameterJdbcOperations.class, JdbcConfiguration.class }) @ConditionalOnClass({ NamedParameterJdbcOperations.class,
AbstractJdbcConfiguration.class })
@ConditionalOnProperty(prefix = "spring.data.jdbc.repositories", name = "enabled", havingValue = "true", matchIfMissing = true) @ConditionalOnProperty(prefix = "spring.data.jdbc.repositories", name = "enabled", havingValue = "true", matchIfMissing = true)
@AutoConfigureAfter(JdbcTemplateAutoConfiguration.class) @AutoConfigureAfter(JdbcTemplateAutoConfiguration.class)
public class JdbcRepositoriesAutoConfiguration { public class JdbcRepositoriesAutoConfiguration {
@ -62,27 +59,9 @@ public class JdbcRepositoriesAutoConfiguration {
} }
@Configuration @Configuration
@ConditionalOnMissingBean(JdbcConfiguration.class) @ConditionalOnMissingBean({ AbstractJdbcConfiguration.class,
static class SpringBootJdbcConfiguration extends JdbcConfiguration { JdbcConfiguration.class })
static class SpringBootJdbcConfiguration extends AbstractJdbcConfiguration {
// Remove these public methods when they are made
// public in Spring Data
@Override
public JdbcCustomConversions jdbcCustomConversions() {
return super.jdbcCustomConversions();
}
@Override
public RelationalMappingContext jdbcMappingContext(
Optional<NamingStrategy> namingStrategy) {
return super.jdbcMappingContext(namingStrategy);
}
@Override
public RelationalConverter relationalConverter(
RelationalMappingContext mappingContext) {
return super.relationalConverter(mappingContext);
}
} }

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2018 the original author or authors. * Copyright 2012-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -30,8 +30,8 @@ import org.springframework.boot.autoconfigure.jdbc.EmbeddedDataSourceConfigurati
import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration;
import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.boot.test.context.runner.ApplicationContextRunner;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.data.jdbc.repository.config.AbstractJdbcConfiguration;
import org.springframework.data.jdbc.repository.config.EnableJdbcRepositories; import org.springframework.data.jdbc.repository.config.EnableJdbcRepositories;
import org.springframework.data.jdbc.repository.config.JdbcConfiguration;
import org.springframework.data.jdbc.repository.config.JdbcRepositoryConfigExtension; import org.springframework.data.jdbc.repository.config.JdbcRepositoryConfigExtension;
import org.springframework.data.repository.Repository; import org.springframework.data.repository.Repository;
@ -78,7 +78,7 @@ public class JdbcRepositoriesAutoConfigurationTests {
"spring.datasource.data=classpath:city.sql", "spring.datasource.data=classpath:city.sql",
"spring.datasource.generate-unique-name:true") "spring.datasource.generate-unique-name:true")
.run((context) -> { .run((context) -> {
assertThat(context).hasSingleBean(JdbcConfiguration.class); assertThat(context).hasSingleBean(AbstractJdbcConfiguration.class);
assertThat(context).hasSingleBean(CityRepository.class); assertThat(context).hasSingleBean(CityRepository.class);
assertThat(context.getBean(CityRepository.class).findById(2000L)) assertThat(context.getBean(CityRepository.class).findById(2000L))
.isPresent(); .isPresent();
@ -93,7 +93,7 @@ public class JdbcRepositoriesAutoConfigurationTests {
.withUserConfiguration(EmbeddedDataSourceConfiguration.class, .withUserConfiguration(EmbeddedDataSourceConfiguration.class,
EmptyConfiguration.class) EmptyConfiguration.class)
.run((context) -> { .run((context) -> {
assertThat(context).hasSingleBean(JdbcConfiguration.class); assertThat(context).hasSingleBean(AbstractJdbcConfiguration.class);
assertThat(context).doesNotHaveBean(Repository.class); assertThat(context).doesNotHaveBean(Repository.class);
}); });
} }
@ -111,7 +111,7 @@ public class JdbcRepositoriesAutoConfigurationTests {
"spring.datasource.data=classpath:city.sql", "spring.datasource.data=classpath:city.sql",
"spring.datasource.generate-unique-name:true") "spring.datasource.generate-unique-name:true")
.run((context) -> { .run((context) -> {
assertThat(context).hasSingleBean(JdbcConfiguration.class); assertThat(context).hasSingleBean(AbstractJdbcConfiguration.class);
assertThat(context).hasSingleBean(CityRepository.class); assertThat(context).hasSingleBean(CityRepository.class);
assertThat(context.getBean(CityRepository.class).findById(2000L)) assertThat(context.getBean(CityRepository.class).findById(2000L))
.isPresent(); .isPresent();

@ -166,7 +166,7 @@
<spring-amqp.version>2.1.4.BUILD-SNAPSHOT</spring-amqp.version> <spring-amqp.version>2.1.4.BUILD-SNAPSHOT</spring-amqp.version>
<spring-batch.version>4.1.1.RELEASE</spring-batch.version> <spring-batch.version>4.1.1.RELEASE</spring-batch.version>
<spring-cloud-connectors.version>2.0.4.RELEASE</spring-cloud-connectors.version> <spring-cloud-connectors.version>2.0.4.RELEASE</spring-cloud-connectors.version>
<spring-data-releasetrain.version>Lovelace-BUILD-SNAPSHOT</spring-data-releasetrain.version> <spring-data-releasetrain.version>Moore-BUILD-SNAPSHOT</spring-data-releasetrain.version>
<spring-framework.version>${spring.version}</spring-framework.version> <spring-framework.version>${spring.version}</spring-framework.version>
<spring-hateoas.version>0.25.0.RELEASE</spring-hateoas.version> <spring-hateoas.version>0.25.0.RELEASE</spring-hateoas.version>
<spring-integration.version>5.1.3.BUILD-SNAPSHOT</spring-integration.version> <spring-integration.version>5.1.3.BUILD-SNAPSHOT</spring-integration.version>

Loading…
Cancel
Save