Class IntegrationGraphServer
java.lang.Object
org.springframework.integration.graph.IntegrationGraphServer
- All Implemented Interfaces:
EventListener
,Aware
,ApplicationContextAware
,ApplicationListener<ContextRefreshedEvent>
public class IntegrationGraphServer extends Object implements ApplicationContextAware, ApplicationListener<ContextRefreshedEvent>
Builds the runtime object model graph.
- Since:
- 4.3
- Author:
- Gary Russell, Artem Bilan
-
Constructor Summary
Constructors Constructor Description IntegrationGraphServer()
-
Method Summary
Modifier and Type Method Description protected ApplicationContext
getApplicationContext()
protected <T> Map<String,T>
getBeansOfType(Class<T> type)
Get beans for the provided type from the application context.Graph
getGraph()
Return the cached graph.void
onApplicationEvent(ContextRefreshedEvent event)
Graph
rebuild()
Rebuild the graph, re-cache it, and return it.void
setAdditionalPropertiesCallback(Function<NamedComponent,Map<String,Object>> additionalPropertiesCallback)
Specify a callbackFunction
to be called against eachNamedComponent
to populate additional properties to the targetIntegrationNode
.void
setApplicationContext(ApplicationContext applicationContext)
void
setApplicationName(String applicationName)
Set the application name that will appear in the 'contentDescriptor' under the 'name' key.
-
Constructor Details
-
IntegrationGraphServer
public IntegrationGraphServer()
-
-
Method Details
-
setApplicationContext
- Specified by:
setApplicationContext
in interfaceApplicationContextAware
- Throws:
BeansException
-
getApplicationContext
-
setApplicationName
Set the application name that will appear in the 'contentDescriptor' under the 'name' key. If not provided, the property 'spring.application.name' from the application context environment will be used (if present).- Parameters:
applicationName
- the application name.
-
setAdditionalPropertiesCallback
public void setAdditionalPropertiesCallback(@Nullable Function<NamedComponent,Map<String,Object>> additionalPropertiesCallback)Specify a callbackFunction
to be called against eachNamedComponent
to populate additional properties to the targetIntegrationNode
.- Parameters:
additionalPropertiesCallback
- theFunction
to use for properties.- Since:
- 5.1
-
onApplicationEvent
- Specified by:
onApplicationEvent
in interfaceApplicationListener<ContextRefreshedEvent>
-
getGraph
Return the cached graph. Although the graph is cached, the data therein (stats etc.) are dynamic.- Returns:
- the graph.
- See Also:
rebuild()
-
rebuild
Rebuild the graph, re-cache it, and return it. Use this method if the application components have changed (added or removed).- Returns:
- the graph.
- See Also:
getGraph()
-
getBeansOfType
Get beans for the provided type from the application context. This method can be extended for some custom logic, e.g. get beans from the parent application context as well.- Type Parameters:
T
- the type for beans to obtain- Parameters:
type
- the type for beans to obtain- Returns:
- a
Map
of bean for the provided type - Since:
- 5.1
-