Class KafkaStreamsBindableProxyFactory
java.lang.Object
org.springframework.cloud.stream.binding.AbstractBindableProxyFactory
org.springframework.cloud.stream.binder.kafka.streams.function.KafkaStreamsBindableProxyFactory
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanFactoryAware
,org.springframework.beans.factory.InitializingBean
,org.springframework.cloud.stream.binding.Bindable
public class KafkaStreamsBindableProxyFactory
extends org.springframework.cloud.stream.binding.AbstractBindableProxyFactory
implements org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.BeanFactoryAware
Kafka Streams specific target bindings proxy factory. See
AbstractBindableProxyFactory
for more details.
Targets bound by this factory:
KStream
KTable
GlobalKTable
This class looks at the Function bean's return signature as ResolvableType
and introspect the individual types,
binding them on the way.
All types on the ResolvableType
are bound except for KStream[] array types on the outbound, which will be
deferred for binding at a later stage. The reason for doing that is because in this class, we don't have any way to know
the actual size in the returned array. That has to wait until the function is invoked and we get a result.
- Since:
- 3.0.0
- Author:
- Soby Chacko
-
Field Summary
Fields inherited from class org.springframework.cloud.stream.binding.AbstractBindableProxyFactory
bindingTargetFactories, inputHolders, outputHolders, type
-
Constructor Summary
ConstructorsConstructorDescriptionKafkaStreamsBindableProxyFactory
(org.springframework.core.ResolvableType[] types, String functionName, Method method) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addOutputBinding
(String output, Class<?> clazz) void
void
setBeanFactory
(org.springframework.beans.factory.BeanFactory beanFactory) Methods inherited from class org.springframework.cloud.stream.binding.AbstractBindableProxyFactory
createAndBindInputs, createAndBindOutputs, getBindingTargetFactory, populateBindingTargetFactories, unbindInputs, unbindOutputs
-
Constructor Details
-
KafkaStreamsBindableProxyFactory
-
-
Method Details
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
-
getInputs
- Specified by:
getInputs
in interfaceorg.springframework.cloud.stream.binding.Bindable
- Overrides:
getInputs
in classorg.springframework.cloud.stream.binding.AbstractBindableProxyFactory
-
getOutputs
- Specified by:
getOutputs
in interfaceorg.springframework.cloud.stream.binding.Bindable
- Overrides:
getOutputs
in classorg.springframework.cloud.stream.binding.AbstractBindableProxyFactory
-
setBeanFactory
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) throws org.springframework.beans.BeansException - Specified by:
setBeanFactory
in interfaceorg.springframework.beans.factory.BeanFactoryAware
- Throws:
org.springframework.beans.BeansException
-
addOutputBinding
-
getFunctionName
-
getOutputHolders
-