@Component(value="cuba_DynamicAttributesGuiTools")
public class DynamicAttributesGuiTools
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected org.springframework.context.ApplicationContext |
applicationContext |
protected io.jmix.dynattrui.impl.AttributeValidators |
attributeValidators |
protected io.jmix.core.DataManager |
dataManager |
protected io.jmix.dynattr.DynAttrMetadata |
dynAttrMetadata |
protected io.jmix.core.FetchPlanRepository |
fetchPlanRepository |
protected io.jmix.core.FetchPlans |
fetchPlans |
protected Metadata |
metadata |
protected io.jmix.core.MetadataTools |
metadataTools |
static java.lang.String |
NAME |
protected io.jmix.core.ReferenceToEntitySupport |
referenceToEntitySupport |
protected Security |
security |
Constructor and Description |
---|
DynamicAttributesGuiTools() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
attributeShouldBeShownOnTheScreen(java.lang.String screen,
java.lang.String component,
io.jmix.dynattr.AttributeDefinition attribute) |
protected boolean |
checkUserPermissionForAttribute(io.jmix.dynattr.AttributeDefinition attribute) |
protected java.util.Set<java.lang.Class> |
collectEntityClasses(io.jmix.core.FetchPlan fetchPlan,
java.util.Set<io.jmix.core.FetchPlan> visited) |
protected java.util.Set<java.lang.Class> |
collectEntityClassesWithDynamicAttributes(io.jmix.core.FetchPlan fetchPlan) |
PickerField.LookupAction |
createLookupAction(PickerField pickerField,
java.lang.String joinClause,
java.lang.String whereClause)
Creates the lookup action that will open the lookup screen with the dynamic filter applied.
|
CollectionDatasource |
createOptionsDatasourceForLookup(io.jmix.core.metamodel.model.MetaClass metaClass,
java.lang.String joinClause,
java.lang.String whereClause)
Creates the collection datasource that is used for selecting the dynamic attribute value.
|
java.util.Collection<java.util.function.Consumer<?>> |
createValidators(io.jmix.dynattr.AttributeDefinition attribute)
Returns validators for a dynamic attribute
|
java.util.Set<io.jmix.dynattr.AttributeDefinition> |
getAttributesToShowOnTheScreen(io.jmix.core.metamodel.model.MetaClass metaClass,
java.lang.String windowId,
java.lang.String componentId) |
boolean |
hasDynamicAttributes(io.jmix.core.Entity entity) |
void |
initDefaultAttributeValues(io.jmix.core.Entity item,
io.jmix.core.metamodel.model.MetaClass metaClass) |
void |
listenCategoryChanges(Datasource ds) |
void |
listenDynamicAttributesChanges(Datasource datasource) |
void |
reloadDynamicAttributes(io.jmix.core.Entity entity)
Reload dynamic attributes on the entity
|
boolean |
screenContainsDynamicAttributes(io.jmix.core.FetchPlan fetchPlan,
java.lang.String screenId)
Method checks whether any class in the view hierarchy contains dynamic attributes that must be displayed on the
current screen
|
protected void |
setDefaultAttributeValue(io.jmix.core.Entity item,
io.jmix.dynattr.AttributeDefinition attribute,
boolean entityIsCategorized,
java.time.ZonedDateTime currentTimestamp) |
public static final java.lang.String NAME
@Autowired protected Metadata metadata
@Autowired protected io.jmix.core.MetadataTools metadataTools
@Autowired protected io.jmix.dynattr.DynAttrMetadata dynAttrMetadata
@Autowired protected Security security
@Autowired protected io.jmix.core.ReferenceToEntitySupport referenceToEntitySupport
@Autowired protected io.jmix.core.DataManager dataManager
@Autowired protected io.jmix.core.FetchPlanRepository fetchPlanRepository
@Autowired protected io.jmix.dynattrui.impl.AttributeValidators attributeValidators
@Autowired protected org.springframework.context.ApplicationContext applicationContext
@Autowired protected io.jmix.core.FetchPlans fetchPlans
public boolean screenContainsDynamicAttributes(io.jmix.core.FetchPlan fetchPlan, java.lang.String screenId)
public void initDefaultAttributeValues(io.jmix.core.Entity item, io.jmix.core.metamodel.model.MetaClass metaClass)
public void listenCategoryChanges(Datasource ds)
public void reloadDynamicAttributes(io.jmix.core.Entity entity)
public boolean hasDynamicAttributes(io.jmix.core.Entity entity)
public java.util.Set<io.jmix.dynattr.AttributeDefinition> getAttributesToShowOnTheScreen(io.jmix.core.metamodel.model.MetaClass metaClass, java.lang.String windowId, java.lang.String componentId)
public java.util.Collection<java.util.function.Consumer<?>> createValidators(io.jmix.dynattr.AttributeDefinition attribute)
public void listenDynamicAttributesChanges(Datasource datasource)
protected java.util.Set<java.lang.Class> collectEntityClassesWithDynamicAttributes(@Nullable io.jmix.core.FetchPlan fetchPlan)
protected java.util.Set<java.lang.Class> collectEntityClasses(io.jmix.core.FetchPlan fetchPlan, java.util.Set<io.jmix.core.FetchPlan> visited)
protected boolean attributeShouldBeShownOnTheScreen(java.lang.String screen, java.lang.String component, io.jmix.dynattr.AttributeDefinition attribute)
protected boolean checkUserPermissionForAttribute(io.jmix.dynattr.AttributeDefinition attribute)
protected void setDefaultAttributeValue(io.jmix.core.Entity item, io.jmix.dynattr.AttributeDefinition attribute, boolean entityIsCategorized, java.time.ZonedDateTime currentTimestamp)
public PickerField.LookupAction createLookupAction(PickerField pickerField, java.lang.String joinClause, java.lang.String whereClause)
public CollectionDatasource createOptionsDatasourceForLookup(io.jmix.core.metamodel.model.MetaClass metaClass, java.lang.String joinClause, java.lang.String whereClause)