Class DefaultBinding<T>
- java.lang.Object
-
- org.springframework.cloud.stream.binder.DefaultBinding<T>
-
- Type Parameters:
T- type of binding
- All Implemented Interfaces:
Binding<T>,org.springframework.context.Lifecycle,org.springframework.integration.core.Pausable,org.springframework.integration.support.management.ManageableLifecycle
public class DefaultBinding<T> extends Object implements Binding<T>
Default implementation for aBinding.- Author:
- Jennifer Hickey, Mark Fisher, Gary Russell, Marius Bogoevici, Oleg Zhurakousky, Myeonghyeon Lee, Soby Chacko
- See Also:
EnableBinding
-
-
Constructor Summary
Constructors Constructor Description DefaultBinding(String name, String group, T target, org.springframework.context.Lifecycle lifecycle)Creates an instance that associates a given name, group and binding target with an optionalLifecyclecomponent, which will be stopped during unbinding.DefaultBinding(String name, T target, org.springframework.context.Lifecycle lifecycle)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidafterUnbind()Listener method that executes after unbinding.StringgetBindingName()Returns the name of the target for this binding (i.e., channel name).StringgetGroup()StringgetName()Returns the name of the destination for this binding.StringgetState()booleanisPausable()booleanisPaused()Will always return false unless overriden.booleanisRunning()voidpause()Pauses the target component represented by this instance if and only if the component implementsPausableinterface NOTE: At the time the instance is created the component is already started and active.voidresume()Resumes the target component represented by this instance if and only if the component implementsPausableinterface NOTE: At the time the instance is created the component is already started and active.voidsetCompanion(org.springframework.context.Lifecycle companion)Sets the companion Lifecycle.voidstart()Stops the target component represented by this instance.voidstop()Starts the target component represented by this instance.StringtoString()voidunbind()Unbinds the target component represented by this instance and stops any active components.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.springframework.cloud.stream.binder.Binding
getBinderName, getBinderType, getExtendedInfo, isInput
-
-
-
-
Constructor Detail
-
DefaultBinding
public DefaultBinding(String name, String group, T target, org.springframework.context.Lifecycle lifecycle)
Creates an instance that associates a given name, group and binding target with an optionalLifecyclecomponent, which will be stopped during unbinding.- Parameters:
name- the name of the binding targetgroup- the group (only for input targets)target- the binding targetlifecycle-Lifecyclethat runs while the binding is active and will be stopped during unbinding
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:BindingReturns the name of the destination for this binding.
-
getBindingName
public String getBindingName()
Description copied from interface:BindingReturns the name of the target for this binding (i.e., channel name).- Specified by:
getBindingNamein interfaceBinding<T>- Returns:
- binding name
-
getGroup
public String getGroup()
-
getState
public String getState()
-
isRunning
public boolean isRunning()
- Specified by:
isRunningin interfaceBinding<T>- Specified by:
isRunningin interfaceorg.springframework.context.Lifecycle- Specified by:
isRunningin interfaceorg.springframework.integration.support.management.ManageableLifecycle- Returns:
- 'true' if the target component represented by this instance is running.
-
isPausable
public boolean isPausable()
-
isPaused
public boolean isPaused()
Description copied from interface:BindingWill always return false unless overriden.
-
start
public void start()
Description copied from interface:BindingStops the target component represented by this instance. NOTE: At the time the instance is created the component is already started. This operation is typically used by actuator to re-bind/re-start.- Specified by:
startin interfaceBinding<T>- Specified by:
startin interfaceorg.springframework.context.Lifecycle- Specified by:
startin interfaceorg.springframework.integration.support.management.ManageableLifecycle- See Also:
BindingsEndpoint
-
stop
public void stop()
Description copied from interface:BindingStarts the target component represented by this instance. NOTE: At the time the instance is created the component is already started. This operation is typically used by actuator to re-bind/re-start.- Specified by:
stopin interfaceBinding<T>- Specified by:
stopin interfaceorg.springframework.context.Lifecycle- Specified by:
stopin interfaceorg.springframework.integration.support.management.ManageableLifecycle- See Also:
BindingsEndpoint
-
pause
public void pause()
Description copied from interface:BindingPauses the target component represented by this instance if and only if the component implementsPausableinterface NOTE: At the time the instance is created the component is already started and active. This operation is typically used by actuator to pause/resume.- Specified by:
pausein interfaceBinding<T>- Specified by:
pausein interfaceorg.springframework.integration.core.Pausable- See Also:
BindingsEndpoint
-
resume
public void resume()
Description copied from interface:BindingResumes the target component represented by this instance if and only if the component implementsPausableinterface NOTE: At the time the instance is created the component is already started and active. This operation is typically used by actuator to pause/resume.- Specified by:
resumein interfaceBinding<T>- Specified by:
resumein interfaceorg.springframework.integration.core.Pausable- See Also:
BindingsEndpoint
-
unbind
public void unbind()
Description copied from interface:BindingUnbinds the target component represented by this instance and stops any active components. Implementations must be idempotent. After this method is invoked, the target is not expected to receive any messages; this instance should be discarded, and a new Binding should be created instead.
-
afterUnbind
protected void afterUnbind()
Listener method that executes after unbinding. Subclasses can implement their own behaviour on unbinding by overriding this method.
-
setCompanion
public void setCompanion(org.springframework.context.Lifecycle companion)
Sets the companion Lifecycle. In most cases, when dealing with message producer (e.g., Supplier), performing any lifecycle operation on it does nothing as we may need to also perform the same operation on its companion object (e.g., SourcePollingChannelAdapter)- Parameters:
companion- instance of companionLifecycleobject
-
-