Skip to content

feat(codegen): generate empty SdkWarmUpProvider and META-INF/services registration per service#7085

Open
joviegas wants to merge 2 commits into
feature/master/crac_auto_priming_supportfrom
joviegas/crac_codegen_service_modules
Open

feat(codegen): generate empty SdkWarmUpProvider and META-INF/services registration per service#7085
joviegas wants to merge 2 commits into
feature/master/crac_auto_priming_supportfrom
joviegas/crac_codegen_service_modules

Conversation

@joviegas

@joviegas joviegas commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Motivation and Context

This change makes codegen emit a provider plus its ServiceLoader registration in every service module. The warmUp() body is empty in this PR; the synthetic priming call is added in a follow-up PR.

Modifications

  • WarmUpProviderSpec: generates <Service>WarmUpProvider in <service>.internal.crac, implementing SdkWarmUpProvider with an empty warmUp().
  • WarmUpProviderRegistrationTask: writes the provider's class name into META-INF/services/software.amazon.awssdk.core.crac.SdkWarmUpProvider. Creates the file once, appends per service, skips duplicates.
  • WarmUpProviderTasks: emits both outputs, wired into AwsGeneratorTasks so every service runs it.
  • Metadata.getFullCracInternalPackageName() and GeneratorPathProvider.getWarmUpProviderDirectory(): resolve the package and output directory.

Testing

  • Added Junits in codegen
  • Will add test in codegen-generated-classes-test after Part B that is implementation of actual wampUp api for each services is completed.

Screenshots (if appropriate)

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

License

  • I confirm that this pull request can be released under the Apache 2 license

joviegas added 2 commits June 26, 2026 14:29
…g specs implementation where we donot genrate javadocs for generated interfaces
@joviegas joviegas requested a review from a team as a code owner June 26, 2026 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant