Skip to content

Refine Repository Composition retrieval during AOT. #3282

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 6 commits into from

Conversation

christophstrobl
Copy link
Member

Add module identifier and base repository implementation properties (seeks better alternative, maybe).
Fix fragment function previously overriding already set property due to name clash.
Extend tests for bean definition resolution and code block creation.

Add module identifier and base repository implementation properties.
Fix fragment function previously overriding already set property due to name clash.
Extend tests for bean definition resolution and code block creation.
Ignore warnings for already checked constructs null away does not understand.
@@ -95,6 +95,10 @@ public abstract class RepositoryFactoryBeanSupport<T extends Repository<S, ID>,
private @Nullable Lazy<T> repository;
private @Nullable RepositoryMetadata repositoryMetadata;

// AOT bean factory hint?
private @Nullable String moduleBaseClass;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's update @Enable…Repositories annotations in the modules supporting AOT repositories to declare the actual baseclass. Any objections?

@mp911de mp911de added the type: enhancement A general enhancement label May 7, 2025
mp911de added 3 commits May 7, 2025 12:21
Associate Repository Bean Definition with RepositoryConfiguration and RepositoryConfigurationExtension attributes to capture configuration details such as the module name or the configuration source.

Introduce RepositoryFragmentsContributor to provide an abstraction for structural fragment implementation allowing to describe the implementation type instead of requiring the implementation object.

Obtain repository fragments from a RepositoryFragmentsContributor (either the configured one or one from a RepositoryFactoryBean).
Introduce dedicated contributor interfaces to AotRepositoryBuilder.
christophstrobl added a commit that referenced this pull request May 8, 2025
Add module identifier and base repository implementation properties.
Fix fragment function previously overriding already set property due to name clash.
Extend tests for bean definition resolution and code block creation.

See: #3279
Original Pull Request: #3282
christophstrobl added a commit that referenced this pull request May 8, 2025
Ignore warnings for already checked constructs null away does not understand.

Original Pull Request: #3282
christophstrobl pushed a commit that referenced this pull request May 8, 2025
Associate Repository Bean Definition with RepositoryConfiguration and RepositoryConfigurationExtension attributes to capture configuration details such as the module name or the configuration source.

Introduce RepositoryFragmentsContributor to provide an abstraction for structural fragment implementation allowing to describe the implementation type instead of requiring the implementation object.

Obtain repository fragments from a RepositoryFragmentsContributor (either the configured one or one from a RepositoryFactoryBean).

Closes: #3279
Original Pull Request: #3282
christophstrobl pushed a commit that referenced this pull request May 8, 2025
Introduce dedicated contributor interfaces to AotRepositoryBuilder.

See: #3279
Original Pull Request: #3282
christophstrobl pushed a commit that referenced this pull request May 8, 2025
Original Pull Request: #3282
christophstrobl added a commit that referenced this pull request May 8, 2025
Fix nullability warnings and update copyright header.

Original Pull Request: #3282
@christophstrobl christophstrobl added this to the 4.0 M3 (2025.1.0) milestone May 8, 2025
@christophstrobl
Copy link
Member Author

Merged to 4.0.x.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement A general enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Capture repository configuration from registered beans.
2 participants