Package org.ametys.odf.program
Class AbstractProgramPart<F extends ProgramPartFactory>
- java.lang.Object
-
- org.ametys.plugins.repository.AbstractAmetysObject
-
- org.ametys.plugins.repository.jcr.SimpleAmetysObject<F>
-
- org.ametys.plugins.repository.jcr.DefaultAmetysObject<F>
-
- org.ametys.cms.repository.DefaultContent<F>
-
- org.ametys.cms.repository.ModifiableDefaultContent<F>
-
- org.ametys.odf.program.AbstractProgramPart<F>
-
- Type Parameters:
F- the actual type of factory.
- All Implemented Interfaces:
CommentableContent,Content,ModifiableContent,ModifiableWorkflowAwareContent,ReactionableObject,ReportableObject,TagAwareAmetysObject,TaggableAmetysObject,WorkflowAwareContent,CDMEntity,CDMFRTagsConstants,ProgramPart,ProgramItem,ACLAmetysObject,AmetysObject,CopiableAmetysObject,DataAwareAmetysObject,ModelAwareDataAwareAmetysObject,ModifiableModelAwareDataAwareAmetysObject,DataHolder,ModelAwareDataHolder,ModifiableDataHolder,ModifiableModelAwareDataHolder,DublinCoreAwareAmetysObject,ModifiableDublinCoreAwareAmetysObject,JCRAmetysObject,JCRTraversableAmetysObject,LockableAmetysObject,LockAwareAmetysObject,MetadataAwareAmetysObject,ModifiableMetadataAwareAmetysObject,ModifiableACLAmetysObject,ModifiableAmetysObject,ModifiableTraversableAmetysObject,RemovableAmetysObject,TraversableAmetysObject,DataAndVersionAwareAmetysObject,ModifiableDataAwareVersionableAmetysObject,VersionableAmetysObject,VersionAwareAmetysObject,WorkflowAwareAmetysObject
- Direct Known Subclasses:
AbstractTraversableProgramPart,CourseList
public abstract class AbstractProgramPart<F extends ProgramPartFactory> extends ModifiableDefaultContent<F> implements ProgramPart
Common implementation of aContentwhich is part of a program
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.ametys.cms.repository.ReactionableObject
ReactionableObject.ReactionType
-
-
Field Summary
-
Fields inherited from class org.ametys.cms.repository.DefaultContent
ATTACHMENTS_NODE_NAME, DEFAULT_CONTENT_LOCALE, METADATA_CONTENTTYPE, METADATA_CONTRIBUTOR, METADATA_CREATION, METADATA_CREATOR, METADATA_FIRST_VALIDATION, METADATA_LANGUAGE, METADATA_LAST_MAJORVALIDATION, METADATA_LAST_VALIDATION, METADATA_MIXINCONTENTTYPES, METADATA_MODIFIED, METADATA_OUTGOING_REFERENCE_NODETYPE, METADATA_OUTGOING_REFERENCE_PROPERTY, METADATA_OUTGOING_REFERENCES, METADATA_OUTGOING_REFERENCES_PATH_PROPERTY, METADATA_ROOT_OUTGOING_REFERENCES
-
Fields inherited from class org.ametys.plugins.repository.jcr.DefaultAmetysObject
PROTECTED_PROPERTIES
-
Fields inherited from interface org.ametys.odf.cdmfr.CDMFRTagsConstants
ATTRIBUTE_ACTIVITY_PART_STRUCTURE, ATTRIBUTE_BLOCK_LANG, ATTRIBUTE_BUILDING, ATTRIBUTE_CODE_SET, ATTRIBUTE_COMPETENCE_YIELDING, ATTRIBUTE_COUNTY_CODE, ATTRIBUTE_COURSE_STRUCTURE, ATTRIBUTE_CURRENCY, ATTRIBUTE_DATE, ATTRIBUTE_DEGREE, ATTRIBUTE_DEGREE_NOT_LMD, ATTRIBUTE_DIPLOMA_TYPE, ATTRIBUTE_DURATION, ATTRIBUTE_ECTS_CREDITS, ATTRIBUTE_EQUIV, ATTRIBUTE_HOURS_PER_WEEK, ATTRIBUTE_ID, ATTRIBUTE_ID_REF, ATTRIBUTE_IDENT, ATTRIBUTE_LANGUAGE, ATTRIBUTE_LEVEL, ATTRIBUTE_LIB_SET, ATTRIBUTE_LIMITED, ATTRIBUTE_METHOD, ATTRIBUTE_NATURE, ATTRIBUTE_ORG, ATTRIBUTE_ORG_TYPE, ATTRIBUTE_ORG_UNIT_KIND_CODE_VALUESET, ATTRIBUTE_PLACES, ATTRIBUTE_PRICE, ATTRIBUTE_REF, ATTRIBUTE_ROLE, ATTRIBUTE_ROOM, ATTRIBUTE_START, ATTRIBUTE_STUDY_PACE, ATTRIBUTE_TEACHING_LANG, ATTRIBUTE_TEACHING_START, ATTRIBUTE_TEACHING_TYPE, ATTRIBUTE_TEL_TYPE, ATTRIBUTE_TERM, ATTRIBUTE_TIME, ATTRIBUTE_TIME_OF_DAY, ATTRIBUTE_TOTAL_WORK_LOAD, ATTRIBUTE_USER_DEFINED, NAMESPACE_AMETYS_CDM, NAMESPACE_CDMFR, PHONE_TYPE_HOME, PHONE_TYPE_MOBILE, PHONE_TYPE_OFFICE, TAG_ACTIVITY_PARTS, TAG_ADDRESS, TAG_ADMISSION_DESCRIPTION, TAG_ADMISSION_INFO, TAG_AFFILIATION, TAG_ALT_LANG_BLOCK, TAG_BIBLIOGRAPHY, TAG_CANCEL_DEADLINE, TAG_CDM, TAG_CDM_DATE_TIME, TAG_CDM_LOCATION, TAG_COMPETENCE_DESC, TAG_COMPETENCE_VALIDITY, TAG_CONTACT_DATA, TAG_CONTACT_NAME, TAG_CONTACTS, TAG_COUNTRY, TAG_COURSE, TAG_COURSE_CODE, TAG_COURSE_CONTENTS, TAG_COURSE_DESCRIPTION, TAG_COURSE_ID, TAG_COURSE_NAME, TAG_CREDITS, TAG_CRITERIA, TAG_DATE_FROM, TAG_DATE_TO, TAG_DEGREE, TAG_DEGREE_NAME, TAG_DIGIT_PROD_PERC, TAG_DIGIT_PROD_UNT_PERC, TAG_DIGITAL_USE, TAG_DIPLOMA, TAG_ECTS_REQUIRED, TAG_EMAIL, TAG_END, TAG_EVALUATION_DEADLINE, TAG_EXAM, TAG_EXAM_DURATION, TAG_EXAM_END, TAG_EXAM_KIND, TAG_EXAM_LOCATION, TAG_EXAM_NAME, TAG_EXAM_PARTS, TAG_EXAM_START, TAG_EXAM_STRUCTURE, TAG_EXISTS, TAG_EXPENSES, TAG_EXTADR, TAG_EXTENSION_BLOCK, TAG_FAMILY_NAME, TAG_FAX, TAG_FORM_OF_ASSESSMENT, TAG_FORM_OF_TEACHING, TAG_FORMAL_PREREQUISITES, TAG_GIVEN_NAME, TAG_GLOBAL_VOLUME, TAG_HABILITATION, TAG_HABILITATION_ID, TAG_HEADER, TAG_HREF, TAG_INFO_BLOCK, TAG_INSTRUCTION_LANGUAGE, TAG_LCMS, TAG_LEARNING_OBJECTIVES, TAG_LEVEL, TAG_LEVEL_CODE, TAG_LINK_NAME, TAG_LOCALITY, TAG_NAME, TAG_OCCURRENCE_RULE, TAG_ORDINARY_NAME, TAG_ORG_UNIT, TAG_ORG_UNIT_ACRONYM, TAG_ORG_UNIT_CODE, TAG_ORG_UNIT_DESCRIPTION, TAG_ORG_UNIT_ID, TAG_ORG_UNIT_KIND, TAG_ORG_UNIT_NAME, TAG_OVERLAP, TAG_PART_STRUCTURE, TAG_PCODE, TAG_PERC_OF_USE, TAG_PERCENTAGE, TAG_PERSON, TAG_PERSON_ID, TAG_PHONE, TAG_PLACE, TAG_POBOX, TAG_PPAL_TEACHING_LANGUAGE, TAG_PROD_PEDA, TAG_PROFESS_FIELD, TAG_PROFESSION, TAG_PROFESSIONAL_DIPLOMA, TAG_PROGRAM, TAG_PROGRAM_CODE, TAG_PROGRAM_DESCRIPTION, TAG_PROGRAM_DURATION, TAG_PROGRAM_ID, TAG_PROGRAM_NAME, TAG_PROGRAM_STRUCTURE, TAG_QUALIFICATION, TAG_QUALIFICATION_DESCRIPTION, TAG_QUALIFICATION_NAME, TAG_RECOMMANDED_PREREQUISITES, TAG_REF_COURSE, TAG_REF_ORG_UNIT, TAG_REF_PERSON, TAG_REF_PROGRAM, TAG_REGION, TAG_REGISTRATION_DEADLINE, TAG_REGISTRATION_DETAIL, TAG_REGISTRATION_MODALITIES, TAG_REGISTRATION_PROCESS, TAG_REGISTRATION_START, TAG_REGULATIONS, TAG_REOCCURRING_EVENTS, TAG_RESOURCE_MGT, TAG_ROLE, TAG_ROME_DATA, TAG_SEARCH_WORD, TAG_SECT_CNU, TAG_SINGLE_EVENT, TAG_START, TAG_STATISTICS, TAG_STREET, TAG_STUDENT_FACILITIES, TAG_STUDENT_PLACES, TAG_STUDENT_STATUS, TAG_STUDY_ABROAD, TAG_STUDY_FIELD, TAG_STUDY_QUALIFICATION, TAG_SUB_BLOCK, TAG_SUB_PROGRAM, TAG_SYLLABUS, TAG_TARGET_GROUP, TAG_TEACHING_ACTIVITY, TAG_TEACHING_ACTIVITY_ID, TAG_TEACHING_ACTIVITY_NAME, TAG_TEACHING_ACTIVITY_STRUCTURE, TAG_TEACHING_PLACE, TAG_TEACHING_START, TAG_TEACHING_TERM, TAG_TEXT, TAG_TIME_FROM, TAG_TIME_OF_DAY, TAG_TIME_TO, TAG_TIMETABLE_ELEMENT, TAG_TITLE, TAG_UNIVERSAL_ADJUSTMENT, TAG_WEB_LINK, VALUE_A_CHOIX, VALUE_APPRENTICESHIP, VALUE_AREA, VALUE_AS_DEGREE, VALUE_ASSOCIATED_LABORITORIES, VALUE_ASSOCIATED_SCHOOLS, VALUE_CITE97, VALUE_COMPLEMENTARY_INFORMATIONS, VALUE_COMPONENT, VALUE_CONTINUE, VALUE_COURSE_STRUCTURE, VALUE_DEGREE, VALUE_DES, VALUE_DIP, VALUE_DISTANCE, VALUE_DOWNLOADING, VALUE_DUREE, VALUE_EC, VALUE_EDUCATION_TYPE, VALUE_ERASMUS, VALUE_FACULTATIVE, VALUE_FINALITE, VALUE_FORMCONTNONDIP, VALUE_FR_FR, VALUE_FRENCHLANGUAGE, VALUE_INIT, VALUE_INTERNATIONAL, VALUE_INTERNSHIP, VALUE_KNOWLEDGES, VALUE_KNOWMORELINK, VALUE_MENTION, VALUE_OBJECTIVES, VALUE_OBLIGATOIRE, VALUE_ORG_UNIT_PARENT, VALUE_PRESENCE, VALUE_PRESENTATION, VALUE_PRO, VALUE_PROFESSIONAL, VALUE_PROFESSIONAL_OBJECTIVES, VALUE_PURSUING, VALUE_RNCP, VALUE_SCHOOLPATH, VALUE_SISE, VALUE_SPECIALITY, VALUE_STAGE, VALUE_SUBPROG_TYPE, VALUE_TYPE, VALUE_UE, VALUE_UECONTAINER, VALUE_UEGROUP, VALUE_UNIVERSITY, VALUE_UNRLR, VALUE_VOLUME_HORAIRE, VALUE_VOLUME_HORAIRE_COURS, VALUE_VOLUME_HORAIRE_TD, VALUE_VOLUME_HORAIRE_TP
-
Fields inherited from interface org.ametys.cms.repository.Content
ATTRIBUTE_TITLE, METADATA_TITLE
-
Fields inherited from interface org.ametys.plugins.repository.data.holder.ModelAwareDataHolder
ALTERNATIVE_SUFFIX, COMMENTS_SUFFIX, STATUS_SUFFIX
-
Fields inherited from interface org.ametys.odf.ProgramItem
CATALOG, CODE, PROGRAM_ITEM_CONTENT_TYPE
-
Fields inherited from interface org.ametys.odf.program.ProgramPart
PARENT_PROGRAM_PARTS
-
-
Constructor Summary
Constructors Constructor Description AbstractProgramPart(Node node, String parentPath, F factory)Constructor
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description StringgetCatalog()Get the catalog of this contentStringgetCdmCode()Get the CDM code.StringgetCDMId()Returns the CDM id.protected abstract StringgetCDMType()Get the type of thisProgramPartin CDM.StringgetCode()Get the CDM-fr of theProgramItemList<ProgramPart>getProgramPartParents()Returns the direct parentProgramPartsSet<Program>getRootPrograms()Returns the programs holding this program partvoidsetCatalog(String catalog)Set the catalogvoidsetCdmCode(String cdmCode)Set the CDM code.voidsetCode(String code)Set the CDM-fr code-
Methods inherited from class org.ametys.cms.repository.ModifiableDefaultContent
createComment, createComment, fillContent, getComment, getComments, getCurrentStepId, getDataHolder, getLockOwner, getProposalDate, getWorkflowId, isLocked, lock, remove, setCreationDate, setCreator, setCurrentStepId, setDCContributor, setDCCoverage, setDCCreator, setDCDate, setDCDescription, setDCFormat, setDCIdentifier, setDCLanguage, setDCPublisher, setDCRelation, setDCRights, setDCSource, setDCSubject, setDCTitle, setDCType, setFirstValidationDate, setLanguage, setLastContributor, setLastMajorValidationDate, setLastModified, setLastValidationDate, setMixinTypes, setOutgoingReferences, setProposalDate, setTitle, setTitle, setTypes, setWorkflowId, tag, unlock, untag
-
Methods inherited from class org.ametys.cms.repository.DefaultContent
addReaction, addReport, clearReports, copyTo, copyTo, copyTo, copyTo, copyTo, createChild, getChild, getChildren, getCreationDate, getCreator, getDCContributor, getDCCoverage, getDCCreator, getDCDate, getDCDescription, getDCFormat, getDCIdentifier, getDCLanguage, getDCPublisher, getDCRelation, getDCRights, getDCSource, getDCSubject, getDCTitle, getDCType, getFirstValidationDate, getLanguage, getLastContributor, getLastMajorValidationDate, getLastModified, getLastValidationDate, getMixinTypes, getOutgoingReferences, getReactionUsers, getReferencingContents, getReportsCount, getRootAttachments, getTags, getTitle, getTitle, getTypes, hasChild, hasReferencingContents, removeReaction, setReportsCount, toSAX
-
Methods inherited from class org.ametys.plugins.repository.jcr.DefaultAmetysObject
addAllowedGroups, addAllowedProfilesForAnonymous, addAllowedProfilesForAnyConnectedUser, addAllowedUsers, addDeniedGroups, addDeniedProfilesForAnonymous, addDeniedProfilesForAnyConnectedUser, addDeniedUsers, addLabel, checkpoint, copyNode, disallowInheritance, getAllLabels, getAllRevisions, getBaseNode, getBaseVersion, getLabels, getLabels, getNode, getProfilesForAnonymousAndAnyConnectedUser, getProfilesForGroups, getProfilesForUsers, getRevision, getRevisionTimestamp, getRevisionTimestamp, getUnversionedDataHolder, getVersionHistory, isInheritanceDisallowed, removeAllowedGroups, removeAllowedGroups, removeAllowedProfilesForAnonymous, removeAllowedProfilesForAnyConnectedUser, removeAllowedUsers, removeAllowedUsers, removeDeniedGroups, removeDeniedGroups, removeDeniedProfilesForAnonymous, removeDeniedProfilesForAnyConnectedUser, removeDeniedUsers, removeDeniedUsers, removeLabel, restoreFromLabel, restoreFromNode, restoreFromRevision, switchToLabel, switchToRevision
-
Methods inherited from class org.ametys.plugins.repository.jcr.SimpleAmetysObject
_getFactory, _invalidateName, _invalidateParentPath, getId, getMetadataHolder, getName, getParent, getParentPath, getPath, needsSave, rename, revertChanges, saveChanges
-
Methods inherited from class org.ametys.plugins.repository.AbstractAmetysObject
equals, hashCode, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.ametys.plugins.repository.ACLAmetysObject
getProfilesForAnonymousAndAnyConnectedUser, getProfilesForGroups, getProfilesForUsers, isInheritanceDisallowed
-
Methods inherited from interface org.ametys.plugins.repository.AmetysObject
equals, getId, getName, getParent, getParentPath, getPath, hashCode
-
Methods inherited from interface org.ametys.odf.cdmfr.CDMEntity
getLanguage
-
Methods inherited from interface org.ametys.cms.repository.Content
getCreationDate, getCreator, getFirstValidationDate, getLanguage, getLastContributor, getLastMajorValidationDate, getLastModified, getLastValidationDate, getMixinTypes, getOutgoingReferences, getReferencingContents, getRootAttachments, getTitle, getTitle, getTypes, hasReferencingContents, toSAX
-
Methods inherited from interface org.ametys.plugins.repository.data.ametysobject.DataAwareAmetysObject
copyTo, dataToSAX, dataToSAX
-
Methods inherited from interface org.ametys.plugins.repository.dublincore.DublinCoreAwareAmetysObject
getDCContributor, getDCCoverage, getDCCreator, getDCDate, getDCDescription, getDCFormat, getDCIdentifier, getDCLanguage, getDCPublisher, getDCRelation, getDCRights, getDCSource, getDCSubject, getDCTitle, getDCType
-
Methods inherited from interface org.ametys.plugins.repository.jcr.JCRAmetysObject
getNode
-
Methods inherited from interface org.ametys.plugins.repository.data.ametysobject.ModelAwareDataAwareAmetysObject
getComments, getDataNames, getDefinition, getExternalValue, getLocalValue, getModel, getStatus, getValue, getValue, hasComments, hasDefinition, hasExternalValue, hasLocalValue, hasNonEmptyExternalValue, hasNonEmptyLocalValue, hasNonEmptyValue, hasValue
-
Methods inherited from interface org.ametys.plugins.repository.data.holder.ModelAwareDataHolder
commentsToSAX, dataToMap, dataToMap, dataToMap, dataToMap, dataToSAX, dataToSAX, dataToSAX, dataToSAX, dataToSAXForEdition, getDataNames, getType, getValue, hasNonEmptyValue, hasValue, isMultiple
-
Methods inherited from interface org.ametys.plugins.repository.ModifiableACLAmetysObject
addAllowedGroups, addAllowedProfilesForAnonymous, addAllowedProfilesForAnyConnectedUser, addAllowedUsers, addDeniedGroups, addDeniedProfilesForAnonymous, addDeniedProfilesForAnyConnectedUser, addDeniedUsers, disallowInheritance, removeAllowedGroups, removeAllowedGroups, removeAllowedProfilesForAnonymous, removeAllowedProfilesForAnyConnectedUser, removeAllowedUsers, removeAllowedUsers, removeDeniedGroups, removeDeniedGroups, removeDeniedProfilesForAnonymous, removeDeniedProfilesForAnyConnectedUser, removeDeniedUsers, removeDeniedUsers
-
Methods inherited from interface org.ametys.plugins.repository.ModifiableAmetysObject
needsSave, rename, revertChanges, saveChanges
-
Methods inherited from interface org.ametys.plugins.repository.metadata.ModifiableMetadataAwareAmetysObject
getMetadataHolder
-
Methods inherited from interface org.ametys.plugins.repository.data.ametysobject.ModifiableModelAwareDataAwareAmetysObject
getComposite, getComposite, getDataHolder, getExternalComposite, getExternalComposite, getExternalRepeater, getExternalRepeater, getLocalComposite, getLocalComposite, getLocalRepeater, getLocalRepeater, getParentDataHolder, getRepeater, getRepeater, getRepositoryData, getRootDataHolder, removeExternalValue, removeLocalValue, removeValue, setComments, setExternalValue, setLocalValue, setStatus, setValue, synchronizeValues, synchronizeValues, synchronizeValues, synchronizeValues
-
Methods inherited from interface org.ametys.plugins.repository.RemovableAmetysObject
remove
-
Methods inherited from interface org.ametys.cms.repository.TagAwareAmetysObject
getTags
-
Methods inherited from interface org.ametys.plugins.repository.TraversableAmetysObject
getChildAt, getChildPosition
-
-
-
-
Constructor Detail
-
AbstractProgramPart
public AbstractProgramPart(Node node, String parentPath, F factory)
Constructor- Parameters:
node- The JCR nodeparentPath- The parent pathfactory- The factory
-
-
Method Detail
-
getProgramPartParents
public List<ProgramPart> getProgramPartParents()
Description copied from interface:ProgramPartReturns the direct parentProgramParts- Specified by:
getProgramPartParentsin interfaceProgramPart- Returns:
- the direct parent
ProgramParts in a List
-
getRootPrograms
public Set<Program> getRootPrograms()
Description copied from interface:ProgramItemReturns the programs holding this program part- Specified by:
getRootProgramsin interfaceProgramItem- Returns:
- the root programs
-
getCatalog
public String getCatalog()
Description copied from interface:ProgramItemGet the catalog of this content- Specified by:
getCatalogin interfaceProgramItem- Returns:
- the name of catalog or null if not set
-
setCatalog
public void setCatalog(String catalog) throws AmetysRepositoryException
Description copied from interface:ProgramItemSet the catalog- Specified by:
setCatalogin interfaceProgramItem- Parameters:
catalog- the name of catalog to set- Throws:
AmetysRepositoryException- if an error occurred
-
getCode
public String getCode()
Description copied from interface:ProgramItemGet the CDM-fr of theProgramItem- Specified by:
getCodein interfaceProgramItem- Returns:
- the CDM-fr code
-
setCode
public void setCode(String code) throws AmetysRepositoryException
Description copied from interface:ProgramItemSet the CDM-fr code- Specified by:
setCodein interfaceProgramItem- Parameters:
code- the CDM-fr to set- Throws:
AmetysRepositoryException- if an error occurs
-
getCDMType
protected abstract String getCDMType()
Get the type of thisProgramPartin CDM. This type compose the CDM identifier- Returns:
- the type
-
getCdmCode
public String getCdmCode()
Description copied from interface:CDMEntityGet the CDM code. This code is not empty only if the CDM entity was imported from a CDMfr file.- Specified by:
getCdmCodein interfaceCDMEntity- Returns:
- the CDM code. Can be null;
-
setCdmCode
public void setCdmCode(String cdmCode)
Description copied from interface:CDMEntitySet the CDM code. This code should be setted only when the CDM entity was imported from a CDMfr file.- Specified by:
setCdmCodein interfaceCDMEntity- Parameters:
cdmCode- the CDM code to set
-
-