Package org.ametys.cms.model.properties
Class AbstractElementsReferencingProperty<T,X extends ModelAwareDataAwareAmetysObject>
java.lang.Object
org.ametys.runtime.model.AbstractModelItem
org.ametys.runtime.model.DefaultElementDefinition<T>
org.ametys.cms.model.properties.AbstractProperty<T,X>
org.ametys.cms.model.properties.AbstractElementsReferencingProperty<T,X>
- Type Parameters:
T
- Type of the property valuesX
- Type of ametys object supported by this property
- All Implemented Interfaces:
Comparable<ModelItem>
,Property<T,
,X> ReferencingProperty<T,
,X> ElementDefinition<T>
,ModelItem
,PluginAware
,Labelable
,ModifiableLabelable
,Configurable
- Direct Known Subclasses:
AbstractMultiValuesProperty
,ElementReferencingProperty
public abstract class AbstractElementsReferencingProperty<T,X extends ModelAwareDataAwareAmetysObject>
extends AbstractProperty<T,X>
implements ReferencingProperty<T,X>
Abstract implementation for a property referencing
ElementDefinition
s-
Field Summary
Fields inherited from class org.ametys.cms.model.properties.AbstractProperty
_availableTypesExtensionPoint
Fields inherited from class org.ametys.runtime.model.DefaultElementDefinition
_logger
Fields inherited from class org.ametys.runtime.model.AbstractModelItem
__serviceManager
Fields inherited from interface org.ametys.runtime.model.ElementDefinition
CONFIG_DEFAULT_VALUE_TYPE
Fields inherited from interface org.ametys.runtime.model.ModelItem
ITEM_PATH_SEPARATOR
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected ElementDefinition<T>
_getReferenceDefinition
(String reference) Retrieves the definition of the given referenced elementprotected I18nizableText
_parseI18nizableText
(Configuration config, String pluginName, String name) Parse an i18n text.void
configure
(Configuration configuration) protected abstract void
configureReferences
(Configuration configuration) Configures the referencesRetrieves the description.getLabel()
Retrieves the label.getName()
Get the name.void
indexValue
(org.apache.solr.common.SolrInputDocument document, X ametysObject, IndexableDataContext context) Index the property in a solr document.void
Called byModel
parsing when the model items of all models have been initialized.Methods inherited from class org.ametys.cms.model.properties.AbstractProperty
_getNameConfigurationAttribute, _getTypeId, getType, isEditable, setAvailableTypeExtensionPoint, setPluginInfo
Methods inherited from class org.ametys.runtime.model.DefaultElementDefinition
_getDefaultValues, _toJSON, _widgetToJSON, _widgetToSAX, getCustomEnumerator, getCustomValidator, getDefaultValue, getEnumerator, getEnumeratorConfiguration, getParsedDefaultValues, getValidator, getValidatorConfiguration, getWidget, getWidgetParameters, isMultiple, of, setCustomEnumerator, setCustomValidator, setDefaultValue, setEnumerator, setEnumeratorConfiguration, setMultiple, setParsedDefaultValues, setType, setValidator, setValidatorConfiguration, setWidget, setWidgetParameters, toSAX
Methods inherited from class org.ametys.runtime.model.AbstractModelItem
_getModelItemHelper, _shouldJSONBeEmpty, _widgetParameterToSAX, addItemChecker, compareTo, disableConditionsToJSON, equals, getDisableConditions, getItemCheckers, getModel, getParent, getPath, getPluginName, hashCode, setDescription, setDisableConditions, setLabel, setModel, setName, setParent, setPluginName, setServiceManager, toJSON, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface org.ametys.runtime.model.ElementDefinition
getCriterionEnumerator, getCustomEnumerator, getCustomValidator, getDefaultValue, getEnumerator, getEnumeratorConfiguration, getParsedDefaultValues, getValidator, getValidatorConfiguration, isEditable, isMultiple, setCustomEnumerator, setCustomValidator, setDefaultValue, setEnumerator, setEnumeratorConfiguration, setMultiple, setParsedDefaultValues, setValidator, setValidatorConfiguration
Methods inherited from interface org.ametys.runtime.model.ModelItem
addItemChecker, getDisableConditions, getItemCheckers, getModel, getParent, getPath, getPluginName, getWidget, getWidgetParameters, setDisableConditions, setModel, setParent, setPluginName, setType, setWidget, setWidgetParameters, toJSON, toSAX
Methods inherited from interface org.ametys.runtime.util.ModifiableLabelable
setDescription, setLabel, setName
Methods inherited from interface org.ametys.cms.model.properties.Property
getCriterionWidget, getCriterionWidgetParameters, getType, getValue, setAvailableTypeExtensionPoint, valueToJSON, valueToSAX
Methods inherited from interface org.ametys.cms.model.properties.ReferencingProperty
getReferences
-
Constructor Details
-
AbstractElementsReferencingProperty
public AbstractElementsReferencingProperty()
-
-
Method Details
-
configure
- Specified by:
configure
in interfaceConfigurable
- Overrides:
configure
in classAbstractProperty<T,
X extends ModelAwareDataAwareAmetysObject> - Throws:
ConfigurationException
-
_parseI18nizableText
protected I18nizableText _parseI18nizableText(Configuration config, String pluginName, String name) throws ConfigurationException Description copied from class:AbstractProperty
Parse an i18n text.- Overrides:
_parseI18nizableText
in classAbstractProperty<T,
X extends ModelAwareDataAwareAmetysObject> - Parameters:
config
- the configuration to use.pluginName
- the current plugin name.name
- the child name.- Returns:
- the i18n text.
- Throws:
ConfigurationException
- if the configuration is not valid.
-
configureReferences
protected abstract void configureReferences(Configuration configuration) throws ConfigurationException Configures the references- Parameters:
configuration
- the property configuration- Throws:
ConfigurationException
- if an error occurred
-
initializeAfterModelItemsInitialization
Description copied from interface:Property
Called byModel
parsing when the model items of all models have been initialized. Can be used to do more initialization, checks, ... needing model items (attributes / properties) of distant contents- Specified by:
initializeAfterModelItemsInitialization
in interfaceProperty<T,
X extends ModelAwareDataAwareAmetysObject> - Throws:
Exception
- if an error occurs or if an additional check fails.
-
_getReferenceDefinition
Retrieves the definition of the given referenced element- Parameters:
reference
- the reference- Returns:
- the referenced element's definition
-
getName
Description copied from interface:Labelable
Get the name.- Specified by:
getName
in interfaceLabelable
- Overrides:
getName
in classAbstractModelItem
- Returns:
- the name.
-
getLabel
Description copied from interface:Labelable
Retrieves the label.- Specified by:
getLabel
in interfaceLabelable
- Overrides:
getLabel
in classAbstractModelItem
- Returns:
- the label.
-
getDescription
Description copied from interface:Labelable
Retrieves the description.- Specified by:
getDescription
in interfaceLabelable
- Overrides:
getDescription
in classAbstractModelItem
- Returns:
- the description.
-
indexValue
public void indexValue(org.apache.solr.common.SolrInputDocument document, X ametysObject, IndexableDataContext context) Description copied from interface:Property
Index the property in a solr document.- Specified by:
indexValue
in interfaceProperty<T,
X extends ModelAwareDataAwareAmetysObject> - Parameters:
document
- the solr document to index into.ametysObject
- the ametysObject containing the property to index.context
- the context of the data to index. Can not be null.
-