Environment Post Processor
Environment post-processor that activates Spring profiles and sets properties used to bootstrap framework components based on Embabel Agent annotations.
This processor runs very early in the Spring Boot startup sequence and examines the application's main class for agent-related annotations. It then activates corresponding Spring profiles to enable platform-specific configurations.
Processing Order:
- Logging Theme - From
@EnableAgents(loggingTheme="...")
Profile Activation:
Profiles are activated through two mechanisms:
- System property:
spring.profiles.active- for compatibility - Environment API:
environment.addActiveProfile()- for direct activation
Implementation Notes:
- Runs with HIGHEST_PRECEDENCE to ensure early execution
- Preserves existing profiles if already set
- Handles multiple application sources (though typically there's only one)
- Uses both annotation utils for proper meta-annotation support
Author
Embabel Team
Since
1.0
See also
org. springframework. boot. env. Environment Post Processor
Functions
Link copied to clipboard
open fun postProcessEnvironment(environment: ConfigurableEnvironment, application: SpringApplication)
Post-processes the environment to activate profiles based on agent annotations.