Interface DataHolder
- All Known Subinterfaces:
CalendarResource
,CommentableContent
,Composite
,Content
,DataAwareAmetysObject
,MetadataAwarePagesContainer
,ModelAwareDataAwareAmetysObject
,ModelAwareDataHolder
,ModelAwareJCRAmetysObject
,ModelLessDataAwareAmetysObject
,ModelLessDataHolder
,ModelLessJCRAmetysObject
,ModifiableCalendar
,ModifiableCalendarEvent
,ModifiableComposite
,ModifiableContent
,ModifiableDataHolder
,ModifiableModelAwareDataAwareAmetysObject
,ModifiableModelAwareDataHolder
,ModifiableModelLessDataAwareAmetysObject
,ModifiableModelLessDataHolder
,ModifiablePage
,ModifiableRepeaterEntry
,ModifiableWebContent
,ModifiableWorkflowAwareContent
,ModifiableZone
,ModifiableZoneItem
,Page
,ProgramPart
,RepeaterEntry
,SharedContent
,Task
,TasksList
,TraversableProgramPart
,WebContent
,WorkflowAwareContent
,Zone
,ZoneItem
- All Known Implementing Classes:
AbstractComposite
,AbstractLevelPage
,AbstractOdfPage
,AbstractProgram
,AbstractProgramPart
,AbstractRepeaterEntry
,AbstractSurveyElement
,AbstractTraversableProgramPart
,Cart
,Catalog
,Container
,ContentBackupAmetysObject
,ContentValue
,Course
,CourseList
,CoursePage
,CoursePart
,CourseZone
,CourseZoneItem
,DefaultContent
,DefaultLink
,DefaultModelAwareDataHolder
,DefaultModelLessDataHolder
,DefaultModifiableModelAwareDataHolder
,DefaultModifiableModelLessDataHolder
,DefaultPage
,DefaultSharedContent
,DefaultWebContent
,DefaultWorkflowAwareContent
,DefaultZone
,DefaultZoneItem
,FirstLevelPage
,FirstLevelZone
,FirstLevelZoneItem
,JCRCalendar
,JCRCalendarEvent
,JCRCalendarResource
,JCRProjectMember
,JCRTask
,JCRTasksList
,ModelAwareComposite
,ModelAwareRepeaterEntry
,ModelLessComposite
,ModifiableContentDataHolder
,ModifiableDefaultContent
,ModifiableDefaultWebContent
,ModifiableModelAwareComposite
,ModifiableModelAwareRepeaterEntry
,ModifiableModelLessComposite
,OrgUnit
,OrgUnitPage
,OrgUnitZone
,OrgUnitZoneItem
,Person
,Program
,ProgramPage
,ProgramZone
,ProgramZoneItem
,Project
,Query
,RedirectPage
,SecondLevelPage
,SecondLevelZone
,SecondLevelZoneItem
,Site
,Sitemap
,SubProgram
,Survey
,SurveyPage
,SurveyQuestion
,TransitionalPage
,TransitionalZone
,TransitionalZoneItem
,UGCPage
,UGCTransitionalPage
,UGCTransitionalZone
,UGCTransitionalZoneItem
,UGCZone
,UGCZoneItem
,UserPage
,UserZone
,UserZoneItem
public interface DataHolder
Interface for data containers
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
copyTo
(ModifiableDataHolder dataHolder) Copies the currentDataHolder
to the givenModifiableModelAwareDataHolder
.default void
dataToSAX
(ContentHandler contentHandler, String dataPath) Generates SAX events for the data at the given data path in the currentDataHolder
Do not generate any event if there is no values at the given pathvoid
dataToSAX
(ContentHandler contentHandler, String dataPath, DataContext context) Generates SAX events for the data at the given data path in the currentDataHolder
Do not generate any event if there is no values at the given pathgetComposite
(String compositePath) Retrieves the composite at the given pathRetrieves the names of data contained by this data holder Retrieves only the data at first level, does not check composite dataOptional<? extends DataHolder>
Retrieves the optional parent of the currentDataHolder
There can be no parent if the currentDataHolder
is the rootRetrieves the repository data used by thisDataHolder
Retrieves theDataHolder
that is the root of the current oneboolean
Checks if there is a non empty value for the data at the given pathboolean
hasValueOrEmpty
(String dataPath) Checks if there is a value, even empty, for the data at the given path
-
Method Details
-
getComposite
Retrieves the composite at the given path- Parameters:
compositePath
- path of the composite to retrieve- Returns:
- the composite or
null
if not exists or is empty - Throws:
IllegalArgumentException
- if the given composite path is null or emptyBadItemTypeException
- if the stored value at the given path is not a composite
-
hasValue
Checks if there is a non empty value for the data at the given path- Parameters:
dataPath
- path of the data- Returns:
true
if there is a non empty value for the data,false
otherwise- Throws:
IllegalArgumentException
- if the given data path is null or empty
-
hasValueOrEmpty
Checks if there is a value, even empty, for the data at the given path- Parameters:
dataPath
- path of the data- Returns:
true
if there is value, even empty, for the data,false
otherwise- Throws:
IllegalArgumentException
- if the given data path is null or empty
-
getDataNames
Retrieves the names of data contained by this data holder Retrieves only the data at first level, does not check composite data- Returns:
- the names of all data contained by this data holder
-
copyTo
default void copyTo(ModifiableDataHolder dataHolder) throws UndefinedItemPathException, BadItemTypeException, UnknownTypeException, NotUniqueTypeException Copies the currentDataHolder
to the givenModifiableModelAwareDataHolder
.- Parameters:
dataHolder
- The destination dataHolder. Can not be null.- Throws:
UndefinedItemPathException
- if one of the copied data is not defined by the model of the destinationModifiableModelAwareDataHolder
BadItemTypeException
- if the type defined by the model of the destinationModifiableModelAwareDataHolder
doesn't match the copied valueUnknownTypeException
- if there is no available type compatible with the copied value for the type extension point of the destinationModifiableModelLessDataHolder
NotUniqueTypeException
- if there is more than one available types compatibles with the copied value for the type extension point of the destinationModifiableModelLessDataHolder
-
dataToSAX
Generates SAX events for the data at the given data path in the currentDataHolder
Do not generate any event if there is no values at the given path- Parameters:
contentHandler
- theContentHandler
that will receive the SAX eventsdataPath
- the path of the data to SAX- Throws:
SAXException
- if an error occurs during the SAX events generation
-
dataToSAX
void dataToSAX(ContentHandler contentHandler, String dataPath, DataContext context) throws SAXException Generates SAX events for the data at the given data path in the currentDataHolder
Do not generate any event if there is no values at the given path- Parameters:
contentHandler
- theContentHandler
that will receive the SAX eventsdataPath
- the path of the data to SAXcontext
- The context of the data to SAX- Throws:
SAXException
- if an error occurs during the SAX events generation
-
getRepositoryData
Retrieves the repository data used by thisDataHolder
- Returns:
- the repository data used by this
DataHolder
-
getParentDataHolder
Optional<? extends DataHolder> getParentDataHolder()Retrieves the optional parent of the currentDataHolder
There can be no parent if the currentDataHolder
is the root- Returns:
- the parent of the current
DataHolder
-
getRootDataHolder
Retrieves theDataHolder
that is the root of the current one- Returns:
- the root
DataHolder
-