Package com.vaadin.flow.data.binder
Interface Binder.Binding<BEAN,TARGET>
- Type Parameters:
BEAN- the bean typeTARGET- the target data type of the binding, matches the field type unless a converter has been set
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
Binder.BindingImpl
Represents the binding between a field and a data property.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionUsed in comparison of the current value of a field with its initial value.HasValue<?,?> getField()Gets the field the binding uses.Gets the getter associated with this Binding.default SerializablePredicate<Binder.Binding<BEAN,TARGET>> Gets predicate for testingisApplied().Gets the setter associated with this Binding.Gets the validation status handler for this Binding.booleanChecks whether the field that the binding uses has uncommitted changes.default booleanChecks whether this binding should be processed during validation and writing to bean.booleanReturns whether asRequired validator is currently enabled or not.booleanReturns whether the value is converted back to the presentation in the field when a converter is used in binding.Returns if default validator of bound field is enabled.booleanGets the current read-only status for this Binding.booleanReturns if validators are currently disabled or not.voidReads the value from given item and stores it to the bound field.voidsetAsRequiredEnabled(boolean asRequiredEnabled) Enable or disable asRequired validator.voidsetConvertBackToPresentation(boolean convertBackToPresentation) Define whether the value should be converted back to the presentation in the field when a converter is used in binding.voidsetDefaultValidatorEnabled(Boolean defaultValidatorEnabled) Sets up this binding to either enable or disable the default field validator (e.g.voidsetIsAppliedPredicate(SerializablePredicate<Binder.Binding<BEAN, TARGET>> isAppliedPredicate) Sets a custom predicate for testingisApplied().voidsetReadOnly(boolean readOnly) Sets the read-only status on for this Binding.voidsetValidatorsDisabled(boolean validatorsDisabled) Define whether validators are disabled or enabled for this specific binding.voidunbind()Unbinds the binding from its respectiveBinder.default BindingValidationStatus<TARGET>validate()Validates the field value and returns aValidationStatusinstance representing the outcome of the validation.validate(boolean fireEvent) Validates the field value and returns aValidationStatusinstance representing the outcome of the validation.
-
Method Details
-
getField
HasValue<?,?> getField()Gets the field the binding uses.- Returns:
- the field for the binding
-
validate
Validates the field value and returns aValidationStatusinstance representing the outcome of the validation. This method is a short-hand for callingvalidate(boolean)withfireEventtrue.- Returns:
- the validation result.
- See Also:
-
validate
Validates the field value and returns aValidationStatusinstance representing the outcome of the validation.- Parameters:
fireEvent-trueto fire status event;falseto not- Returns:
- the validation result.
- See Also:
-
getValidationStatusHandler
BindingValidationStatusHandler getValidationStatusHandler()Gets the validation status handler for this Binding.- Returns:
- the validation status handler for this binding
-
unbind
void unbind()Unbinds the binding from its respectiveBinder. Removes anyValueChangeListenerRegistrationfrom associatedHasValue. -
read
Reads the value from given item and stores it to the bound field.- Parameters:
bean- the bean to read from
-
setReadOnly
void setReadOnly(boolean readOnly) Sets the read-only status on for this Binding. Setting a Binding read-only will mark the field read-only and not write any values from the fields to the bean.This helper method is the preferred way to control the read-only state of the bound field.
- Parameters:
readOnly-trueto set binding read-only;falseto enable writes- Throws:
IllegalStateException- if trying to make binding read-write and the setter isnull
-
isReadOnly
boolean isReadOnly()Gets the current read-only status for this Binding.- Returns:
trueif read-only;falseif not- See Also:
-
getGetter
ValueProvider<BEAN,TARGET> getGetter()Gets the getter associated with this Binding.- Returns:
- the getter
-
getSetter
Gets the setter associated with this Binding.- Returns:
- the setter
-
setAsRequiredEnabled
void setAsRequiredEnabled(boolean asRequiredEnabled) Enable or disable asRequired validator. The validator is enabled by default.- Parameters:
asRequiredEnabled-falseif asRequired validator should be disabled,trueotherwise (default)- See Also:
-
isAsRequiredEnabled
boolean isAsRequiredEnabled()Returns whether asRequired validator is currently enabled or not.- Returns:
falseif asRequired validator is disabledtrueotherwise (default)- See Also:
-
setValidatorsDisabled
void setValidatorsDisabled(boolean validatorsDisabled) Define whether validators are disabled or enabled for this specific binding.- Parameters:
validatorsDisabled- A boolean value.
-
isValidatorsDisabled
boolean isValidatorsDisabled()Returns if validators are currently disabled or not.- Returns:
- A boolean value.
-
setDefaultValidatorEnabled
Sets up this binding to either enable or disable the default field validator (e.g. min/max validators in DatePicker). This binding-level setting will override the Binder-level setting for this property. Defaults to null.- Parameters:
defaultValidatorEnabled- true to enable default validator for this binding, false to disable it, null to reset (fall back to Binder-level setting)- See Also:
-
isDefaultValidatorEnabled
Boolean isDefaultValidatorEnabled()Returns if default validator of bound field is enabled.- Returns:
- true if default validator is enabled for this binding, false if it is disabled, null if falls back to Binder-level setting
-
setConvertBackToPresentation
void setConvertBackToPresentation(boolean convertBackToPresentation) Define whether the value should be converted back to the presentation in the field when a converter is used in binding.As of version 6.0, when a converter is used on a binding and the user input value is modified by the converter, the value from the converter is applied back to the input. It is possible to control this behavior with this API.
- Parameters:
convertBackToPresentation- A boolean value- See Also:
-
isConvertBackToPresentation
boolean isConvertBackToPresentation()Returns whether the value is converted back to the presentation in the field when a converter is used in binding.- Returns:
- A boolean value
-
hasChanges
boolean hasChanges()Checks whether the field that the binding uses has uncommitted changes.- Returns:
- true if the field the binding uses has uncommitted changes, otherwise false.
- Throws:
IllegalStateException- if the binding is no longer attached to a Binder.
-
getEqualityPredicate
SerializableBiPredicate<TARGET,TARGET> getEqualityPredicate()Used in comparison of the current value of a field with its initial value.Once set, the value of the field that binding uses will be compared with the initial value for hasChanged.
- Returns:
- the predicate to use for equality comparison
-
isApplied
default boolean isApplied()Checks whether this binding should be processed during validation and writing to bean.- Returns:
- true if this binding should be processed, false if this binding should be ignored
-
getIsAppliedPredicate
Gets predicate for testingisApplied(). By default, non-visible components are ignored during validation and bean writing.- Returns:
- predicate for testing
isApplied()
-
setIsAppliedPredicate
Sets a custom predicate for testingisApplied(). Set to null to restore default functionality.- Parameters:
isAppliedPredicate- custom predicate for testingisApplied()
-