Class EntityComboBox<V>

java.lang.Object
com.vaadin.flow.component.Component
com.vaadin.flow.component.AbstractField<C,T>
com.vaadin.flow.component.AbstractSinglePropertyField<R,T>
com.vaadin.flow.component.combobox.GeneratedVaadinComboBox<com.vaadin.flow.component.combobox.ComboBox<T>,T>
com.vaadin.flow.component.combobox.ComboBox<V>
io.jmix.flowui.kit.component.combobox.ComboBoxPicker<V>
io.jmix.flowui.component.combobox.EntityComboBox<V>
All Implemented Interfaces:
com.vaadin.flow.component.AttachNotifier, com.vaadin.flow.component.BlurNotifier<com.vaadin.flow.component.combobox.ComboBox<V>>, com.vaadin.flow.component.DetachNotifier, com.vaadin.flow.component.Focusable<com.vaadin.flow.component.combobox.ComboBox<V>>, com.vaadin.flow.component.FocusNotifier<com.vaadin.flow.component.combobox.ComboBox<V>>, com.vaadin.flow.component.HasElement, com.vaadin.flow.component.HasEnabled, com.vaadin.flow.component.HasHelper, com.vaadin.flow.component.HasLabel, com.vaadin.flow.component.HasSize, com.vaadin.flow.component.HasStyle, com.vaadin.flow.component.HasTheme, com.vaadin.flow.component.HasValidation, com.vaadin.flow.component.HasValue<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,V>,V>, com.vaadin.flow.component.HasValueAndElement<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,V>,V>, com.vaadin.flow.component.shared.HasClearButton, com.vaadin.flow.data.provider.HasDataView<V,String,com.vaadin.flow.component.combobox.dataview.ComboBoxDataView<V>>, com.vaadin.flow.data.provider.HasLazyDataView<V,String,com.vaadin.flow.component.combobox.dataview.ComboBoxLazyDataView<V>>, com.vaadin.flow.data.provider.HasListDataView<V,com.vaadin.flow.component.combobox.dataview.ComboBoxListDataView<V>>, EntityPickerComponent<V>, HasRequired, LookupComponent<V>, PickerComponent<V>, SupportsMetaClass, SupportsValidation<V>, SupportsDataProvider<V>, SupportsFilterableItemsContainer<V>, SupportsItemsContainer<V>, SupportsValueSource<V>, HasActions, HasTitle, SupportsUserAction<V>, Serializable, org.springframework.beans.factory.Aware, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware

public class EntityComboBox<V> extends ComboBoxPicker<V> implements EntityPickerComponent<V>, LookupComponent<V>, SupportsValidation<V>, SupportsDataProvider<V>, SupportsItemsContainer<V>, SupportsFilterableItemsContainer<V>, HasRequired, org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.InitializingBean
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.vaadin.flow.component.combobox.ComboBox

    com.vaadin.flow.component.combobox.ComboBox.FetchItemsCallback<T extends Object>, com.vaadin.flow.component.combobox.ComboBox.ItemFilter<T extends Object>

    Nested classes/interfaces inherited from class com.vaadin.flow.component.combobox.GeneratedVaadinComboBox

    com.vaadin.flow.component.combobox.GeneratedVaadinComboBox.CustomValueSetEvent<R extends com.vaadin.flow.component.combobox.GeneratedVaadinComboBox<R,?>>, com.vaadin.flow.component.combobox.GeneratedVaadinComboBox.FilterChangeEvent<R extends com.vaadin.flow.component.combobox.GeneratedVaadinComboBox<R,?>>, com.vaadin.flow.component.combobox.GeneratedVaadinComboBox.InvalidChangeEvent<R extends com.vaadin.flow.component.combobox.GeneratedVaadinComboBox<R,?>>, com.vaadin.flow.component.combobox.GeneratedVaadinComboBox.OpenedChangeEvent<R extends com.vaadin.flow.component.combobox.GeneratedVaadinComboBox<R,?>>, com.vaadin.flow.component.combobox.GeneratedVaadinComboBox.SelectedItemChangeEvent<R extends com.vaadin.flow.component.combobox.GeneratedVaadinComboBox<R,?>>

    Nested classes/interfaces inherited from class com.vaadin.flow.component.AbstractField

    com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<C extends com.vaadin.flow.component.Component,V extends Object>

    Nested classes/interfaces inherited from interface com.vaadin.flow.component.BlurNotifier

    com.vaadin.flow.component.BlurNotifier.BlurEvent<C extends com.vaadin.flow.component.Component>

    Nested classes/interfaces inherited from interface com.vaadin.flow.component.FocusNotifier

    com.vaadin.flow.component.FocusNotifier.FocusEvent<C extends com.vaadin.flow.component.Component>

    Nested classes/interfaces inherited from interface com.vaadin.flow.component.HasValue

    com.vaadin.flow.component.HasValue.ValueChangeEvent<V extends Object>, com.vaadin.flow.component.HasValue.ValueChangeListener<E extends com.vaadin.flow.component.HasValue.ValueChangeEvent<?>>

    Nested classes/interfaces inherited from interface io.jmix.flowui.component.LookupComponent

    LookupComponent.MultiSelectLookupComponent<T>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.springframework.context.ApplicationContext
     
     
     
    protected MetaClass
     

    Fields inherited from class io.jmix.flowui.kit.component.combobox.ComboBoxPicker

    actionsSupport

    Fields inherited from interface io.jmix.flowui.component.HasRequired

    PROPERTY_REQUIRED

    Fields inherited from interface io.jmix.flowui.component.SupportsValidation

    PROPERTY_ERROR_MESSAGE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    com.vaadin.flow.shared.Registration
    addValidator(Validator<? super V> validator)
     
    void
     
    protected void
     
     
     
     
    void
     
    protected String
     
     
     
     
     
    boolean
     
    void
    setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
     
    <C> void
    setDataProvider(com.vaadin.flow.data.provider.DataProvider<V,C> dataProvider, com.vaadin.flow.function.SerializableFunction<String,C> filterConverter)
     
    void
    setInvalid(boolean invalid)
    Sets invalid state to the field considering result of field validation.
    void
    Sets items from the passed CollectionContainer.
    void
    setItems(CollectionContainer<V> container, com.vaadin.flow.function.SerializableBiPredicate<V,String> itemFilter)
    Sets items from the passed CollectionContainer.
    void
     
    void
    setRequiredMessage(String requiredMessage)
     
    void
    setValue(V value)
     
    void
    Sets the value of this component as if the user had set it.
    void
     

    Methods inherited from class io.jmix.flowui.kit.component.combobox.ComboBoxPicker

    addAction, getAction, getActions, getActionsSupport, removeAction

    Methods inherited from class com.vaadin.flow.component.combobox.ComboBox

    addCustomValueSetListener, addThemeVariants, getDataProvider, getEmptyValue, getErrorMessage, getGenericDataView, getItemLabelGenerator, getLabel, getLazyDataView, getListDataView, getPageSize, getPattern, getPlaceholder, isAllowCustomValue, isAutofocus, isAutoOpen, isOpened, isPreventInvalidInput, isRequired, onAttach, onDetach, removeThemeVariants, setAllowCustomValue, setAutofocus, setAutoOpen, setDataProvider, setDataProvider, setDataProvider, setDataProvider, setErrorMessage, setItemLabelGenerator, setItems, setItems, setItems, setItems, setItems, setItems, setItems, setItems, setItems, setItems, setItems, setItems, setItemsWithFilterConverter, setItemsWithFilterConverter, setLabel, setOpened, setPageSize, setPattern, setPlaceholder, setPreventInvalidInput, setRenderer, setRequired, setRequiredIndicatorVisible

    Methods inherited from class com.vaadin.flow.component.combobox.GeneratedVaadinComboBox

    addFilterChangeListener, addInvalidChangeListener, addOpenedChangeListener, addSelectedItemChangeListener, addToPrefix, cancel, checkValidity, clearCache, close, getErrorMessageString, getFilteredItemsJsonArray, getFilterString, getItemIdPathString, getItemLabelPathString, getItemsJsonArray, getItemValuePathString, getLabelString, getNameString, getPageSizeDouble, getPatternString, getPlaceholderString, getSelectedItemJsonObject, getSizeDouble, isAllowCustomValueBoolean, isAutofocusBoolean, isDisabledBoolean, isInvalidBoolean, isLoadingBoolean, isOpenedBoolean, isPreventInvalidInputBoolean, isReadonlyBoolean, isRequiredBoolean, open, remove, removeAll, setDisabled, setFilter, setFilteredItems, setItemIdPath, setItemLabelPath, setItems, setItemValuePath, setLoading, setName, setPageSize, setReadonly, setSelectedItem, setSize, validate

    Methods inherited from class com.vaadin.flow.component.AbstractSinglePropertyField

    getSynchronizationRegistration, hasValidValue, setPresentationValue, setSynchronizedEvent

    Methods inherited from class com.vaadin.flow.component.AbstractField

    addValueChangeListener, getValue, isEmpty, setModelValue, valueEquals

    Methods inherited from class com.vaadin.flow.component.Component

    addListener, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getLocale, getParent, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onEnabledStateChanged, scrollIntoView, set, setElement, setId, setVisible

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.vaadin.flow.component.AttachNotifier

    addAttachListener

    Methods inherited from interface com.vaadin.flow.component.BlurNotifier

    addBlurListener

    Methods inherited from interface com.vaadin.flow.component.DetachNotifier

    addDetachListener

    Methods inherited from interface com.vaadin.flow.component.Focusable

    addFocusShortcut, blur, focus, getTabIndex, setTabIndex

    Methods inherited from interface com.vaadin.flow.component.FocusNotifier

    addFocusListener

    Methods inherited from interface io.jmix.flowui.kit.component.HasActions

    addAction, addAction, getAction, getActions, removeAction, removeAction, removeAllActions

    Methods inherited from interface com.vaadin.flow.component.shared.HasClearButton

    isClearButtonVisible, setClearButtonVisible

    Methods inherited from interface com.vaadin.flow.component.HasElement

    getElement

    Methods inherited from interface com.vaadin.flow.component.HasEnabled

    isEnabled, setEnabled

    Methods inherited from interface com.vaadin.flow.component.HasHelper

    getHelperComponent, getHelperText, setHelperComponent, setHelperText

    Methods inherited from interface com.vaadin.flow.data.provider.HasListDataView

    setItems

    Methods inherited from interface io.jmix.flowui.component.HasRequired

    isRequired, setRequired

    Methods inherited from interface com.vaadin.flow.component.HasSize

    getHeight, getHeightUnit, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getWidth, getWidthUnit, setHeight, setHeight, setHeightFull, setMaxHeight, setMaxHeight, setMaxWidth, setMaxWidth, setMinHeight, setMinHeight, setMinWidth, setMinWidth, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthFull

    Methods inherited from interface com.vaadin.flow.component.HasStyle

    addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName

    Methods inherited from interface com.vaadin.flow.component.HasTheme

    addThemeName, addThemeNames, getThemeName, getThemeNames, hasThemeName, removeThemeName, removeThemeNames, setThemeName, setThemeName

    Methods inherited from interface io.jmix.flowui.kit.component.HasTitle

    getTitle, setTitle

    Methods inherited from interface com.vaadin.flow.component.HasValue

    clear, getOptionalValue

    Methods inherited from interface com.vaadin.flow.component.HasValueAndElement

    isReadOnly, isRequiredIndicatorVisible, setReadOnly

    Methods inherited from interface io.jmix.flowui.data.SupportsDataProvider

    getDataProvider

    Methods inherited from interface io.jmix.flowui.component.SupportsValidation

    getErrorMessage, setErrorMessage
  • Field Details

  • Constructor Details

    • EntityComboBox

      public EntityComboBox()
  • Method Details

    • setApplicationContext

      public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
      Specified by:
      setApplicationContext in interface org.springframework.context.ApplicationContextAware
    • afterPropertiesSet

      public void afterPropertiesSet()
      Specified by:
      afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
    • setValue

      public void setValue(@Nullable V value)
      Specified by:
      setValue in interface com.vaadin.flow.component.HasValue<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,V>,V>
      Overrides:
      setValue in class com.vaadin.flow.component.combobox.ComboBox<V>
    • setValueFromClient

      public void setValueFromClient(@Nullable V value)
      Description copied from interface: SupportsUserAction
      Sets the value of this component as if the user had set it. The user originated attribute is only used for the HasValue.ValueChangeEvent.
      Specified by:
      setValueFromClient in interface SupportsUserAction<V>
      Overrides:
      setValueFromClient in class ComboBoxPicker<V>
      Parameters:
      value - the new value
    • checkValueType

      protected void checkValueType(@Nullable V value)
    • isInvalid

      public boolean isInvalid()
      Specified by:
      isInvalid in interface com.vaadin.flow.component.HasValidation
      Overrides:
      isInvalid in class com.vaadin.flow.component.combobox.ComboBox<V>
    • setInvalid

      public void setInvalid(boolean invalid)
      Description copied from interface: SupportsValidation
      Sets invalid state to the field considering result of field validation.
      • Invalid - false and validation passed - false = field is valid
      • Invalid - false and validation passed - true = field is valid
      • Invalid - true and validation passed - false = field is invalid
      • Invalid - true and validation passed - true = field is valid
      Specified by:
      setInvalid in interface com.vaadin.flow.component.HasValidation
      Specified by:
      setInvalid in interface SupportsValidation<V>
      Overrides:
      setInvalid in class com.vaadin.flow.component.combobox.ComboBox<V>
      Parameters:
      invalid - whether field should be invalid
    • getRequiredMessage

      @Nullable public String getRequiredMessage()
      Specified by:
      getRequiredMessage in interface HasRequired
    • setRequiredMessage

      public void setRequiredMessage(@Nullable String requiredMessage)
      Specified by:
      setRequiredMessage in interface HasRequired
    • addValidator

      public com.vaadin.flow.shared.Registration addValidator(Validator<? super V> validator)
      Specified by:
      addValidator in interface SupportsValidation<V>
    • executeValidators

      public void executeValidators() throws ValidationException
      Specified by:
      executeValidators in interface SupportsValidation<V>
      Throws:
      ValidationException
    • getValueSource

      @Nullable public ValueSource<V> getValueSource()
      Specified by:
      getValueSource in interface SupportsValueSource<V>
    • setValueSource

      public void setValueSource(@Nullable ValueSource<V> valueSource)
      Specified by:
      setValueSource in interface SupportsValueSource<V>
    • setDataProvider

      public <C> void setDataProvider(com.vaadin.flow.data.provider.DataProvider<V,C> dataProvider, com.vaadin.flow.function.SerializableFunction<String,C> filterConverter)
      Overrides:
      setDataProvider in class com.vaadin.flow.component.combobox.ComboBox<V>
    • setItems

      public void setItems(CollectionContainer<V> container)
      Description copied from interface: SupportsItemsContainer
      Sets items from the passed CollectionContainer.
      Specified by:
      setItems in interface SupportsItemsContainer<V>
      Parameters:
      container - a CollectionContainer to be used as items source
      See Also:
    • setItems

      public void setItems(CollectionContainer<V> container, com.vaadin.flow.function.SerializableBiPredicate<V,String> itemFilter)
      Description copied from interface: SupportsFilterableItemsContainer
      Sets items from the passed CollectionContainer.
      Specified by:
      setItems in interface SupportsFilterableItemsContainer<V>
      Parameters:
      container - a CollectionContainer to be used as items source
      itemFilter - a filter to check if an item is shown when user typed some text into the field
      See Also:
    • generateLabel

      protected String generateLabel(@Nullable V item)
    • getMetaClass

      @Nullable public MetaClass getMetaClass()
      Specified by:
      getMetaClass in interface SupportsMetaClass
    • setMetaClass

      public void setMetaClass(@Nullable MetaClass metaClass)
      Specified by:
      setMetaClass in interface SupportsMetaClass
    • getSelectedItems

      public Set<V> getSelectedItems()
      Specified by:
      getSelectedItems in interface LookupComponent<V>
    • createFieldDelegate

      protected EntityFieldDelegate<EntityComboBox<V>,V,V> createFieldDelegate()
    • createDataViewDelegate

      protected DataViewDelegate<EntityComboBox<V>,V> createDataViewDelegate()
    • createActionsSupport

      protected ValuePickerActionSupport createActionsSupport()
      Overrides:
      createActionsSupport in class ComboBoxPicker<V>