Updated function bootstrapping based on SCF changes
This commit is contained in:
@@ -32,6 +32,7 @@ import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.beans.factory.BeanCreationException;
|
||||
import org.springframework.beans.factory.SmartInitializingSingleton;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.beans.factory.config.BeanDefinition;
|
||||
import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
|
||||
@@ -277,7 +278,10 @@ public class BinderFactoryConfiguration {
|
||||
|
||||
private String determineFunctionName(FunctionCatalog catalog, Environment environment) {
|
||||
String name = environment.getProperty("spring.cloud.stream.function.definition");
|
||||
if (!StringUtils.hasText(name) && catalog.size() == 1) {
|
||||
if (!StringUtils.hasText(name) && catalog.size() == 0) {
|
||||
((SmartInitializingSingleton) catalog).afterSingletonsInstantiated();
|
||||
}
|
||||
if (!StringUtils.hasText(name) && catalog.size() >= 1 && catalog.size() <= 2) {
|
||||
name = ((FunctionInspector) catalog).getName(catalog.lookup(""));
|
||||
if (StringUtils.hasText(name)) {
|
||||
((StandardEnvironment) environment).getSystemProperties()
|
||||
|
||||
@@ -20,6 +20,7 @@ import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
import org.springframework.beans.factory.SmartInitializingSingleton;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
@@ -59,6 +60,7 @@ public class FunctionConfiguration {
|
||||
CompositeMessageConverterFactory messageConverterFactory,
|
||||
StreamFunctionProperties functionProperties,
|
||||
BindingServiceProperties bindingServiceProperties) {
|
||||
((SmartInitializingSingleton) functionCatalog).afterSingletonsInstantiated();
|
||||
return new IntegrationFlowFunctionSupport(functionCatalog, functionInspector,
|
||||
messageConverterFactory, functionProperties, bindingServiceProperties);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user