Interface Binding
-
- All Known Implementing Classes:
AbstractBinding
,AbstractPollingBinding
,BrokenBinding
,ExpressionBinding
,ExpressionStructureBinding
,HttpBinding
,PropertyBinding
,QueryBinding
public interface Binding
A binding is associated with a target property and shares the lifecycle of the component (or shorter, in the designer-scope sessions). When created, a binding is given a consumer callbackBindingFactory.create(BindingContext, BindingConfig)
which it should call anytime it generates a value. The callback may be invoked on or off-queue.
-
-
Field Summary
Fields Modifier and Type Field Description static QualifiedValue
BAD_CONFIG
static QualifiedValue
BAD_REF
static java.lang.String
BIDIRECTIONAL_KEY
Shared config key for storing bidirectional propertystatic QualifiedValue
INITIAL_VALUE
static java.lang.String
MDC_BINDING_TARGET
static QualifiedValue
NOT_FOUND
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default boolean
isBidirectional()
default void
onTargetPropertyChanged(QualifiedValue newValue)
This will be called when the target property changes from a source other than the binding, if the binding returns true fromisBidirectional()
and there are no transforms present.void
onUserRefresh()
Called to prompt the binding to produce a value as soon as possible.void
shutdown()
Shut down the binding.void
startup()
Start up the binding.
-
-
-
Field Detail
-
BIDIRECTIONAL_KEY
static final java.lang.String BIDIRECTIONAL_KEY
Shared config key for storing bidirectional property- See Also:
- Constant Field Values
-
MDC_BINDING_TARGET
static final java.lang.String MDC_BINDING_TARGET
- See Also:
- Constant Field Values
-
NOT_FOUND
static final QualifiedValue NOT_FOUND
-
BAD_REF
static final QualifiedValue BAD_REF
-
BAD_CONFIG
static final QualifiedValue BAD_CONFIG
-
INITIAL_VALUE
static final QualifiedValue INITIAL_VALUE
-
-
Method Detail
-
startup
void startup()
Start up the binding. Will be called on-queue
-
shutdown
void shutdown()
Shut down the binding. Will be called on-queue
-
isBidirectional
default boolean isBidirectional()
- Returns:
- true if this binding wants to be bidirectional. Note that if any transforms are present, then the binding will not operate in a bidirectional way.
-
onTargetPropertyChanged
default void onTargetPropertyChanged(QualifiedValue newValue)
This will be called when the target property changes from a source other than the binding, if the binding returns true fromisBidirectional()
and there are no transforms present.
-
onUserRefresh
void onUserRefresh()
Called to prompt the binding to produce a value as soon as possible. This _not_ the normal way that bindings work. Bindings are expected to produce a value un-prompted after startup, and then again whenever they feel is appropriate. This is there to allow the user to call component.refreshBinding(property) and prompt a non-polling binding to run.
-
-