Resolve package cycle between repository and aot packages.
Closes #2707
This commit is contained in:
@@ -19,7 +19,7 @@ import org.mockito.Mockito;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.ComponentScan.Filter;
|
||||
import org.springframework.context.annotation.FilterType;
|
||||
import org.springframework.data.aot.sample.ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo;
|
||||
import org.springframework.data.aot.sample.ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo;
|
||||
import org.springframework.data.repository.CrudRepository;
|
||||
import org.springframework.data.repository.config.EnableRepositories;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -29,9 +29,9 @@ import org.springframework.transaction.TransactionManager;
|
||||
* @author Christoph Strobl
|
||||
*/
|
||||
@EnableRepositories(includeFilters = { @Filter(type = FilterType.ASSIGNABLE_TYPE, value = MyComponentTxRepo.class) },
|
||||
basePackageClasses = ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.class,
|
||||
basePackageClasses = ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.class,
|
||||
considerNestedRepositories = true)
|
||||
public class ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty {
|
||||
public class ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository {
|
||||
|
||||
@Component
|
||||
public interface MyComponentTxRepo extends CrudRepository<Person, String> {
|
||||
@@ -13,7 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.data.aot;
|
||||
package org.springframework.data.repository.aot;
|
||||
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
import static org.mockito.Mockito.*;
|
||||
@@ -26,6 +26,7 @@ import org.assertj.core.api.AbstractAssert;
|
||||
import org.springframework.aot.generate.GenerationContext;
|
||||
import org.springframework.aot.test.generate.TestGenerationContext;
|
||||
import org.springframework.beans.factory.aot.BeanRegistrationCode;
|
||||
import org.springframework.data.aot.CodeContributionAssert;
|
||||
import org.springframework.data.repository.core.RepositoryInformation;
|
||||
import org.springframework.data.repository.core.support.RepositoryFragment;
|
||||
|
||||
@@ -13,10 +13,10 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.data.aot;
|
||||
package org.springframework.data.repository.aot;
|
||||
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
import static org.springframework.data.aot.RepositoryRegistrationAotContributionAssert.*;
|
||||
import static org.springframework.data.repository.aot.RepositoryRegistrationAotContributionAssert.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@@ -36,7 +36,7 @@ import org.springframework.data.aot.sample.ConfigWithQueryMethods;
|
||||
import org.springframework.data.aot.sample.ConfigWithQueryMethods.ProjectionInterface;
|
||||
import org.springframework.data.aot.sample.ConfigWithSimpleCrudRepository;
|
||||
import org.springframework.data.aot.sample.ConfigWithTransactionManagerPresent;
|
||||
import org.springframework.data.aot.sample.ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty;
|
||||
import org.springframework.data.aot.sample.ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository;
|
||||
import org.springframework.data.aot.sample.ReactiveConfig;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.repository.PagingAndSortingRepository;
|
||||
@@ -103,31 +103,31 @@ public class RepositoryRegistrationAotProcessorIntegrationTests {
|
||||
void simpleRepositoryWithTxManagerNoKotlinNoReactiveButComponent() {
|
||||
|
||||
RepositoryRegistrationAotContribution repositoryBeanContribution = computeAotConfiguration(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.class)
|
||||
.forRepository(ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class);
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.class).forRepository(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class);
|
||||
|
||||
assertThatContribution(repositoryBeanContribution) //
|
||||
.targetRepositoryTypeIs(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class) //
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class) //
|
||||
.hasNoFragments() //
|
||||
.codeContributionSatisfies(contribution -> { //
|
||||
contribution
|
||||
.contributesReflectionFor(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class) // repository
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class) // repository
|
||||
// interface
|
||||
.contributesReflectionFor(PagingAndSortingRepository.class) // base repository
|
||||
.contributesReflectionFor(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.Person.class) // domain type
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.Person.class) // domain type
|
||||
|
||||
// proxies
|
||||
.contributesJdkProxy(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class,
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class,
|
||||
SpringProxy.class, Advised.class, DecoratingProxy.class)
|
||||
.contributesJdkProxy(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class,
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class,
|
||||
Repository.class, TransactionalProxy.class, Advised.class, DecoratingProxy.class)
|
||||
.contributesJdkProxy(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class,
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class,
|
||||
Repository.class, TransactionalProxy.class, Advised.class, DecoratingProxy.class, Serializable.class);
|
||||
});
|
||||
}
|
||||
@@ -157,10 +157,10 @@ public class RepositoryRegistrationAotProcessorIntegrationTests {
|
||||
.contributesJdkProxy(ConfigWithFragments.RepositoryWithFragments.class, SpringProxy.class, Advised.class,
|
||||
DecoratingProxy.class)
|
||||
.doesNotContributeJdkProxy(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class,
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class,
|
||||
Repository.class, TransactionalProxy.class, Advised.class, DecoratingProxy.class)
|
||||
.doesNotContributeJdkProxy(
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepoisoty.MyComponentTxRepo.class,
|
||||
ConfigWithTransactionManagerPresentAndAtComponentAnnotatedRepository.MyComponentTxRepo.class,
|
||||
Repository.class, TransactionalProxy.class, Advised.class, DecoratingProxy.class, Serializable.class);
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user