Class A_CmsXmlContentValue
- All Implemented Interfaces:
Comparable<I_CmsXmlSchemaType>,I_CmsWidgetParameter,I_CmsXmlContentValue,I_CmsXmlSchemaType
- Direct Known Subclasses:
A_CmsXmlValueCdataBase,A_CmsXmlValueTextBase,CmsXmlAccessRestrictionValue,CmsXmlCategoryValue,CmsXmlDynamicCategoryValue,CmsXmlHtmlValue,CmsXmlNestedContentDefinition,CmsXmlVarLinkValue,CmsXmlVfsFileValue
- Since:
- 6.0.0
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.opencms.xml.types.I_CmsXmlContentValue
I_CmsXmlContentValue.CmsSearchContentConfig, I_CmsXmlContentValue.SearchContentType -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected StringThe default value for nodes of this value.protected I_CmsXmlDocumentThe XML content instance this value belongs to.protected org.dom4j.ElementThe XML element node that contains this value.protected LocaleThe locale this value was generated for.protected intThe maximum occurrences of this value according to the parent schema.protected intThe minimum occurrences of this value according to the parent schema.protected StringThe configured XML node name of this value.Fields inherited from interface org.opencms.xml.types.I_CmsXmlSchemaType
XSI_NAMESPACE, XSI_NAMESPACE_ATTRIBUTE_NO_SCHEMA_LOCATION -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedDefault constructor for a XML content type that initializes some internal values.protectedA_CmsXmlContentValue(String name, String minOccurs, String maxOccurs) Initializes the schema type descriptor values for this type descriptor.protectedA_CmsXmlContentValue(I_CmsXmlDocument document, org.dom4j.Element element, Locale locale, I_CmsXmlSchemaType type) Initializes the required members for this XML content value. -
Method Summary
Modifier and TypeMethodDescriptionvoidappendXmlSchema(org.dom4j.Element root) Appends an element XML representation of this type to the given root node.intbooleanorg.dom4j.ElementgenerateXml(CmsObject cms, I_CmsXmlDocument document, org.dom4j.Element root, Locale locale) Appends an XML for a new, empty node of this schema type to the given root element.intReturns the maximum occurrences of choice options for this type in the current schema.Returns the content definition this schema type belongs to.getDefault(Locale locale) Returns the default value for a node of this type in the current schema.getDefault(CmsObject cms) Returns the default value of this parameter.Returns the XML content instance this value belongs to.org.dom4j.ElementReturns the original XML element of this XML content value.getId()Returns the form id of this parameter.intgetIndex()Returns the node index of this XML content value in the source XML document, starting with 0, with special handling of elements in choice groups.getKey()Returns the localized key identificator of this parameter.Returns the locale of this XML content value was generated for.intReturns the total number of XML elements of this type that currently exist in the source document.intReturns the maximum occurrences of this type.intReturns the minimum occurrences of this type.getName()Returns the name.getPath()Returns the path of this XML content value in the source document.getPlainText(CmsObject cms) Returns the value of this XML content node as a plain text String.protected CmsRelationTypegetRelationType(String path) Returns the relation type for the given path.intReturns the node index of this XML content value in the source XML document, starting with 0, based on the XML ordering.booleanhasError()Returnstrueif this widgets value contains an error.inthashCode()booleanReturnstrueif this type is an option inside of a choice sequence.booleanReturnstrueif this type defines a choice sequence.booleanThe default implementation always returnstrue.booleanReturnstrueif this is a simple type, orfalseif this type is a nested schema.voidmoveDown()Moves this XML content value one position down in the source document, if possible.voidmoveUp()Moves this XML content value one position up in the source document, if possible.protected voidmoveValue(int step) Moves this XML content element up or down in the XML document.protected StringreadSchemaDefinition(String schemaUri) Convenience method to loads the XML schema definition for this value type from an external file.voidsetContentDefinition(CmsXmlContentDefinition contentDefinition) Sets the content definition this schema type belongs to.voidsetDefault(String defaultValue) Sets the default value for a node of this type.voidsetKeyPrefix(String prefix) Sets an optional localized key prefix identificator of this parameter.toString()booleanvalidateValue(String value) Checks if a given value is valid according to the validation rule (regular expression) used for validation of this schema type in the XML schema.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.opencms.widgets.I_CmsWidgetParameter
getStringValue, setStringValueMethods inherited from interface org.opencms.xml.types.I_CmsXmlContentValue
getSearchContentConfig, getStringValue, setStringValueMethods inherited from interface org.opencms.xml.types.I_CmsXmlSchemaType
createValue, getSchemaDefinition, getTypeName, newInstance
-
Field Details
-
m_defaultValue
The default value for nodes of this value. -
m_document
The XML content instance this value belongs to. -
m_element
The XML element node that contains this value. -
m_locale
The locale this value was generated for. -
m_maxOccurs
The maximum occurrences of this value according to the parent schema. -
m_minOccurs
The minimum occurrences of this value according to the parent schema. -
m_name
The configured XML node name of this value.
-
-
Constructor Details
-
A_CmsXmlContentValue
protected A_CmsXmlContentValue()Default constructor for a XML content type that initializes some internal values. -
A_CmsXmlContentValue
protected A_CmsXmlContentValue(I_CmsXmlDocument document, org.dom4j.Element element, Locale locale, I_CmsXmlSchemaType type) Initializes the required members for this XML content value.- Parameters:
document- the XML content instance this value belongs toelement- the XML element that contains this valuelocale- the locale this value is created fortype- the type instance to create the value for
-
A_CmsXmlContentValue
Initializes the schema type descriptor values for this type descriptor.- Parameters:
name- the name of the XML node containing the value according to the XML schemaminOccurs- minimum number of occurrences of this type according to the XML schemamaxOccurs- maximum number of occurrences of this type according to the XML schema
-
-
Method Details
-
appendXmlSchema
Appends an element XML representation of this type to the given root node.- Specified by:
appendXmlSchemain interfaceI_CmsXmlSchemaType- Parameters:
root- the element to append the XML to
-
compareTo
- Specified by:
compareToin interfaceComparable<I_CmsXmlSchemaType>- See Also:
-
equals
-
generateXml
public org.dom4j.Element generateXml(CmsObject cms, I_CmsXmlDocument document, org.dom4j.Element root, Locale locale) Description copied from interface:I_CmsXmlSchemaTypeAppends an XML for a new, empty node of this schema type to the given root element.This is used to dynamically build a vaild XML content object from an initialized
CmsXmlContentDefinitionclass.Important: This method can only be used during initialization of a XML content object, not to add values to an already initialized XML content. To add values after initialization, use
CmsXmlContent.addValue(CmsObject, String, Locale, int).- Specified by:
generateXmlin interfaceI_CmsXmlSchemaType- Parameters:
cms- the current users OpenCms contextdocument- the document the XML is generated forroot- the element to append the XML tolocale- the locale to generate the element default content for- Returns:
- the generated XML element
- See Also:
-
getChoiceMaxOccurs
Description copied from interface:I_CmsXmlSchemaTypeReturns the maximum occurrences of choice options for this type in the current schema.This will be greater than 0 only if
I_CmsXmlSchemaType.isChoiceType()istrue.- Specified by:
getChoiceMaxOccursin interfaceI_CmsXmlSchemaType- Returns:
- the maximum occurrences of choice options for this type in the current schema
- See Also:
-
getContentDefinition
Description copied from interface:I_CmsXmlSchemaTypeReturns the content definition this schema type belongs to.If the value belongs to a nested content, then the nested content definition is returned. This means that for documents with nested schemas, the content definition of a value is not necessarily equal to the content definition of the document itself, which can be obtained using
I_CmsXmlContentValue.getDocument().- Specified by:
getContentDefinitionin interfaceI_CmsXmlSchemaType- Returns:
- the content definition this schema type belongs to
- See Also:
-
getDefault
Description copied from interface:I_CmsWidgetParameterReturns the default value of this parameter.If no default value has been provided,
nullis returned.- Specified by:
getDefaultin interfaceI_CmsWidgetParameter- Parameters:
cms- an initialized instance of an OpenCms user context- Returns:
- the default value of this parameter
- See Also:
-
getDefault
Description copied from interface:I_CmsXmlSchemaTypeReturns the default value for a node of this type in the current schema.- Specified by:
getDefaultin interfaceI_CmsXmlSchemaType- Parameters:
locale- the locale to generate the default value for- Returns:
- the default value for a node of this type in the current schema
- See Also:
-
getDocument
Description copied from interface:I_CmsXmlContentValueReturns the XML content instance this value belongs to.- Specified by:
getDocumentin interfaceI_CmsXmlContentValue- Returns:
- the XML content instance this value belongs to
- See Also:
-
getElement
Description copied from interface:I_CmsXmlContentValueReturns the original XML element of this XML content value.- Specified by:
getElementin interfaceI_CmsXmlContentValue- Returns:
- the original XML element of this XML content value
- See Also:
-
getId
Description copied from interface:I_CmsWidgetParameterReturns the form id of this parameter.- Specified by:
getIdin interfaceI_CmsWidgetParameter- Returns:
- the form id of this parameter
- See Also:
-
getIndex
Description copied from interface:I_CmsXmlContentValueReturns the node index of this XML content value in the source XML document, starting with 0, with special handling of elements in choice groups.This is useful in case there are more than one elements with the same XML node name in the source XML document.
Elements in XML choice groups will share the same number space, so a choice sequence will be numbered like this:
Title[1], Text[2], Title[3], Image[4]- Specified by:
getIndexin interfaceI_CmsWidgetParameter- Specified by:
getIndexin interfaceI_CmsXmlContentValue- Returns:
- the index of this XML content node in the source document with special handling of elements in choice groups
- See Also:
-
getKey
Description copied from interface:I_CmsWidgetParameterReturns the localized key identificator of this parameter.- Specified by:
getKeyin interfaceI_CmsWidgetParameter- Returns:
- the localized key identificator of this parameter
- See Also:
-
getLocale
Description copied from interface:I_CmsXmlContentValueReturns the locale of this XML content value was generated for.- Specified by:
getLocalein interfaceI_CmsXmlContentValue- Returns:
- the locale of this XML content value was generated for
- See Also:
-
getMaxIndex
Description copied from interface:I_CmsXmlContentValueReturns the total number of XML elements of this type that currently exist in the source document.- Specified by:
getMaxIndexin interfaceI_CmsXmlContentValue- Returns:
- the total number of XML elements of this type that currently exist in the source document
- See Also:
-
getMaxOccurs
Returns the maximum occurrences of this type.- Specified by:
getMaxOccursin interfaceI_CmsWidgetParameter- Specified by:
getMaxOccursin interfaceI_CmsXmlSchemaType- Returns:
- the maximum occurrences of this type
-
getMinOccurs
Returns the minimum occurrences of this type.- Specified by:
getMinOccursin interfaceI_CmsWidgetParameter- Specified by:
getMinOccursin interfaceI_CmsXmlSchemaType- Returns:
- the minimum occurrences of this type
-
getName
Returns the name.- Specified by:
getNamein interfaceI_CmsWidgetParameter- Specified by:
getNamein interfaceI_CmsXmlSchemaType- Returns:
- the name
-
getPath
Description copied from interface:I_CmsXmlContentValueReturns the path of this XML content value in the source document.- Specified by:
getPathin interfaceI_CmsXmlContentValue- Returns:
- the path of this XML content value in the source document
- See Also:
-
getPlainText
Description copied from interface:I_CmsXmlContentValueReturns the value of this XML content node as a plain text String.Plain text in this context means a pure textual representation of the content (i.e. without html tags). The plain text may be
null, too, if there is no sound or useful textual representation (i.e. color values).- Specified by:
getPlainTextin interfaceI_CmsXmlContentValue- Parameters:
cms- an initialized instance of a CmsObject- Returns:
- the value of this XML content node as a plain text String
- See Also:
-
getXmlIndex
Description copied from interface:I_CmsXmlContentValueReturns the node index of this XML content value in the source XML document, starting with 0, based on the XML ordering.Elements in choice groups will be numbered like this:
Title[1], Text[1], Title[2], Image[1]- Specified by:
getXmlIndexin interfaceI_CmsXmlContentValue- Returns:
- the index of this XML content node in the source document with special handling of elements in choice groups
- See Also:
-
hasError
Description copied from interface:I_CmsWidgetParameterReturnstrueif this widgets value contains an error.- Specified by:
hasErrorin interfaceI_CmsWidgetParameter- Returns:
trueif this widgets value contains an error- See Also:
-
hashCode
-
isChoiceOption
Description copied from interface:I_CmsXmlSchemaTypeReturnstrueif this type is an option inside of a choice sequence.This method is intended to check if this type is a node inside a choice sequence. In order to check if this type defines a choice sequence, use
I_CmsXmlSchemaType.isChoiceType().- Specified by:
isChoiceOptionin interfaceI_CmsXmlSchemaType- Returns:
trueif this node defines a choice sequence- See Also:
-
isChoiceType
Description copied from interface:I_CmsXmlSchemaTypeReturnstrueif this type defines a choice sequence.This method is intended to check if this type is a node defining a choice sequence. In order to check if this type is an option inside of a choice sequence, use
I_CmsXmlSchemaType.isChoiceOption().- Specified by:
isChoiceTypein interfaceI_CmsXmlSchemaType- Returns:
trueif this node defines a choice sequence- See Also:
-
isSearchable
The default implementation always returnstrue.- Specified by:
isSearchablein interfaceI_CmsXmlContentValue- Returns:
truein case this value is searchable by default- See Also:
-
isSimpleType
Description copied from interface:I_CmsXmlSchemaTypeReturnstrueif this is a simple type, orfalseif this type is a nested schema.If a value is a nested schema, it must be an instance of
CmsXmlNestedContentDefinition.- Specified by:
isSimpleTypein interfaceI_CmsXmlSchemaType- Returns:
- true if this is a simple type, or false if this type is a nested schema
- See Also:
-
moveDown
Description copied from interface:I_CmsXmlContentValueMoves this XML content value one position down in the source document, if possible.If the XML content value is already the first in it's sequence, it is not moved.
- Specified by:
moveDownin interfaceI_CmsXmlContentValue- See Also:
-
moveUp
Description copied from interface:I_CmsXmlContentValueMoves this XML content value one position up in the source document, if possible.If the XML content value is already the last in it's sequence, it is not moved.
- Specified by:
moveUpin interfaceI_CmsXmlContentValue- See Also:
-
setContentDefinition
Description copied from interface:I_CmsXmlSchemaTypeSets the content definition this schema type belongs to.This is done automatically when the scheme type is added to a content definition. Usually there is no need to call this method from the application.
- Specified by:
setContentDefinitionin interfaceI_CmsXmlSchemaType- Parameters:
contentDefinition- the content definition to set- See Also:
-
setDefault
Sets the default value for a node of this type.- Specified by:
setDefaultin interfaceI_CmsXmlSchemaType- Parameters:
defaultValue- the default value to set
-
setKeyPrefix
Description copied from interface:I_CmsWidgetParameterSets an optional localized key prefix identificator of this parameter.- Specified by:
setKeyPrefixin interfaceI_CmsWidgetParameter- Parameters:
prefix- the optional localized key prefix identificator of this parameter- See Also:
-
toString
-
validateValue
Description copied from interface:I_CmsXmlSchemaTypeChecks if a given value is valid according to the validation rule (regular expression) used for validation of this schema type in the XML schema.To have a more refined validation according to the special requirements of the content type, use custom validation rules in the appinfo which are processed with
I_CmsXmlContentHandler.resolveValidation(CmsObject, I_CmsXmlContentValue, org.opencms.xml.content.CmsXmlContentErrorHandler).- Specified by:
validateValuein interfaceI_CmsXmlSchemaType- Parameters:
value- the value to validate- Returns:
- the validation rule (regular expression) used for this schema type in the XML schema
- See Also:
-
getRelationType
Returns the relation type for the given path.- Parameters:
path- the element path- Returns:
- the relation type
-
moveValue
Moves this XML content element up or down in the XML document.Please note: No check is performed if the move violates the XML document schema!
- Parameters:
step- move the element up or down according to the given step value
-
readSchemaDefinition
Convenience method to loads the XML schema definition for this value type from an external file.- Parameters:
schemaUri- the schema uri to load the XML schema file from- Returns:
- the loaded XML schema
- Throws:
CmsRuntimeException- if something goes wrong
-