@Component(value="ui_LookupBuilderProcessor")
public class LookupBuilderProcessor
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected io.jmix.core.DataManager |
dataManager |
protected io.jmix.core.EntityStates |
entityStates |
protected io.jmix.core.ExtendedEntities |
extendedEntities |
protected io.jmix.core.FetchPlans |
fetchPlans |
protected io.jmix.core.Metadata |
metadata |
protected io.jmix.core.MetadataTools |
metadataTools |
protected UiScreenProperties |
screenProperties |
protected WindowConfig |
windowConfig |
Constructor and Description |
---|
LookupBuilderProcessor() |
Modifier and Type | Method and Description |
---|---|
<E,S extends Screen> |
buildLookup(LookupBuilder<E> builder) |
protected <E> Screen |
createScreen(LookupBuilder<E> builder,
Screens screens) |
protected <E> java.lang.Object |
fromCollection(java.util.Collection<E> value,
boolean isCollectionValue) |
protected <E> io.jmix.core.FetchPlan |
getFetchPlanForCollectionContainer(CollectionContainer<E> collectionDc,
boolean initializeMasterReference,
io.jmix.core.metamodel.model.MetaProperty inverseMetaProperty)
See
getFetchPlanForField(HasValue) javadoc. |
protected io.jmix.core.FetchPlan |
getFetchPlanForField(HasValue field)
The method evaluates the fetch plan that is used for the entity in the given
field |
protected <E> void |
handleSelectionWithContainer(LookupBuilder<E> builder,
CollectionContainer<E> collectionDc,
java.util.Collection<E> itemsFromLookup) |
protected <E> void |
handleSelectionWithField(LookupBuilder<E> builder,
HasValue field,
java.util.Collection<E> itemsFromLookup,
boolean isCollectionValue) |
protected <E> java.util.Collection<E> |
reloadItemsByFetchPlan(io.jmix.core.FetchPlan fetchPlan,
java.util.Collection<E> itemsFromLookup) |
protected <E> java.util.Collection<E> |
toCollection(java.lang.Object value,
boolean isCollectionValue) |
protected <E> java.util.Collection<E> |
transform(java.util.Collection<E> selectedItems,
LookupBuilder<E> builder) |
<E> void |
updateFieldOptions(OptionsField field,
java.util.Collection<E> items)
Updates entities in options if they contain selected item from lookup screen.
|
@Autowired protected WindowConfig windowConfig
@Autowired protected UiScreenProperties screenProperties
@Autowired protected io.jmix.core.ExtendedEntities extendedEntities
@Autowired protected io.jmix.core.Metadata metadata
@Autowired protected io.jmix.core.EntityStates entityStates
@Autowired protected io.jmix.core.DataManager dataManager
@Autowired protected io.jmix.core.MetadataTools metadataTools
@Autowired protected io.jmix.core.FetchPlans fetchPlans
public <E,S extends Screen> S buildLookup(LookupBuilder<E> builder)
protected <E> Screen createScreen(LookupBuilder<E> builder, Screens screens)
protected <E> void handleSelectionWithField(LookupBuilder<E> builder, HasValue field, java.util.Collection<E> itemsFromLookup, boolean isCollectionValue)
protected <E> java.util.Collection<E> toCollection(java.lang.Object value, boolean isCollectionValue)
protected <E> java.lang.Object fromCollection(java.util.Collection<E> value, boolean isCollectionValue)
protected <E> void handleSelectionWithContainer(LookupBuilder<E> builder, CollectionContainer<E> collectionDc, java.util.Collection<E> itemsFromLookup)
protected <E> java.util.Collection<E> transform(java.util.Collection<E> selectedItems, LookupBuilder<E> builder)
@Nullable protected io.jmix.core.FetchPlan getFetchPlanForField(HasValue field)
field
If the value for a component (e.g. EntityPicker
) is selected from lookup screen then there may be cases
when in entities in lookup screen some attributes required in the editor are not loaded.
null
if the fetch plan cannot be evaluated@Nullable protected <E> io.jmix.core.FetchPlan getFetchPlanForCollectionContainer(CollectionContainer<E> collectionDc, boolean initializeMasterReference, @Nullable io.jmix.core.metamodel.model.MetaProperty inverseMetaProperty)
getFetchPlanForField(HasValue)
javadoc.protected <E> java.util.Collection<E> reloadItemsByFetchPlan(io.jmix.core.FetchPlan fetchPlan, java.util.Collection<E> itemsFromLookup)
public <E> void updateFieldOptions(OptionsField field, java.util.Collection<E> items)
E
- entity typefield
- options field to updateitems
- selected entities from lookup screen to update options in field