GH-966 change AWSCompanionAutoConfiguration to be a refular auto-configuration rather than initializer
Resolves #966
This commit is contained in:
@@ -20,28 +20,24 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import org.springframework.cloud.function.json.JacksonMapper;
|
||||
import org.springframework.cloud.function.json.JsonMapper;
|
||||
import org.springframework.context.ApplicationContextInitializer;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.support.GenericApplicationContext;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Oleg Zhurakousky
|
||||
* @since 3.2
|
||||
*
|
||||
*/
|
||||
public class AWSCompanionAutoConfiguration implements ApplicationContextInitializer<GenericApplicationContext> {
|
||||
public class AWSCompanionAutoConfiguration {
|
||||
|
||||
@Override
|
||||
public void initialize(GenericApplicationContext applicationContext) {
|
||||
applicationContext.registerBean("awsTypesMessageConverter", AWSTypesMessageConverter.class,
|
||||
() -> {
|
||||
if (CollectionUtils.isEmpty(applicationContext.getBeansOfType(JsonMapper.class).values())) {
|
||||
return new AWSTypesMessageConverter(new JacksonMapper(new ObjectMapper()));
|
||||
}
|
||||
else {
|
||||
return new AWSTypesMessageConverter(applicationContext.getBean(JsonMapper.class));
|
||||
}
|
||||
});
|
||||
@Bean
|
||||
public AWSTypesMessageConverter awsTypesMessageConverter(GenericApplicationContext applicationContext) {
|
||||
JsonMapper jsonMapper = CollectionUtils.isEmpty(applicationContext.getBeansOfType(JsonMapper.class).values())
|
||||
? new JacksonMapper(new ObjectMapper())
|
||||
: applicationContext.getBean(JsonMapper.class);
|
||||
return new AWSTypesMessageConverter(jsonMapper);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
org.springframework.context.ApplicationContextInitializer=\
|
||||
org.springframework.cloud.function.adapter.aws.CustomRuntimeInitializer,org.springframework.cloud.function.adapter.aws.AWSCompanionAutoConfiguration
|
||||
org.springframework.cloud.function.adapter.aws.CustomRuntimeInitializer
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
org.springframework.cloud.function.adapter.aws.AWSCompanionAutoConfiguration
|
||||
Reference in New Issue
Block a user