Package org.ametys.plugins.odfsync.cdmfr
Class CDMFrSynchronizableContentsCollection
- java.lang.Object
-
- org.ametys.plugins.contentio.synchronize.AbstractStaticSynchronizableContentsCollection
-
- org.ametys.plugins.contentio.synchronize.AbstractSynchronizableContentsCollection
-
- org.ametys.plugins.odfsync.cdmfr.AbstractCDMFrSynchronizableContentsCollection
-
- org.ametys.plugins.odfsync.cdmfr.CDMFrSynchronizableContentsCollection
-
- All Implemented Interfaces:
SynchronizableContentsCollection,Configurable,Contextualizable,Serviceable
public class CDMFrSynchronizableContentsCollection extends AbstractCDMFrSynchronizableContentsCollection implements Contextualizable
Class for CDMFr import and synchronization
-
-
Field Summary
Fields Modifier and Type Field Description protected static String__PARAM_FOLDERData source parameter : folderprotected File_cdmfrFolderCDM-fr folderprotected Context_cocoonContextThe Cocoon contextprotected String_odfLangDefault language configured for ODFprotected Set<String>_updatedContentsList of synchronized contents (to avoid a treatment twice or more)-
Fields inherited from class org.ametys.plugins.odfsync.cdmfr.AbstractCDMFrSynchronizableContentsCollection
_importCDMFrComponent
-
Fields inherited from class org.ametys.plugins.contentio.synchronize.AbstractSynchronizableContentsCollection
_contentWorkflowHelper, _currentUserProvider, _hasGlobalError, _i18nUtils, _nbCreatedContents, _nbDeletedContents, _nbError, _nbNotChangedContents, _nbSynchronizedContents, _observationManager, SCC_UNIQUE_ID
-
Fields inherited from class org.ametys.plugins.contentio.synchronize.AbstractStaticSynchronizableContentsCollection
_contentDAO, _contentPrefix, _contentType, _contentTypeEP, _id, _initialActionId, _label, _languages, _modelId, _modelParamValues, _removalSync, _reportMails, _resolver, _restrictedField, _sccHelper, _searchModelConfiguration, _synchronizeActionId, _synchronizeExistingContentsOnly, _synchronizingContentOperator, _validateActionId, _validateAfterImport, _workflowName
-
Fields inherited from interface org.ametys.plugins.contentio.synchronize.SynchronizableContentsCollection
COLLECTION_ID_DATA_NAME, RESULT_NB_CREATED_CONTENTS, RESULT_NB_DELETED_CONTENTS, RESULT_NB_NOT_CHANGED_CONTENTS, RESULT_NB_SYNCHRONIZED_CONTENTS
-
-
Constructor Summary
Constructors Constructor Description CDMFrSynchronizableContentsCollection()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected List<Content>_getContentsToRemove(AmetysObjectIterable<ModifiableContent> contents)Filter the contents to remove.protected Map<String,Object>_handleFile(File cdmfrFile, Map<String,Object> parameters, org.slf4j.Logger logger)Handle the CDM-fr file to import all the programs and its dependencies containing into it.protected List<ModifiableContent>_internalPopulate(org.slf4j.Logger logger)Internal implementation ofAbstractSynchronizableContentsCollection.populate(Logger)voidconfigure(Configuration configuration)protected voidconfigureDataSource(Configuration configuration)Configure the data source parameters.protected voidconfigureSearchModel()Configure the search model used by SCCSearchTool.protected voidconfigureSpecificParameters()Configure the specific parameters of this implementation of CDM-fr import.voidcontextualize(Context context)ModifiableContentgetContent(String lang, String idValue)Gets the content in the repositoryintgetTotalCount(Map<String,Object> searchParameters, org.slf4j.Logger logger)Return the total number of results for the search.booleanhandleRightAssignmentContext()Return true if aRightAssignmentContextshould be automatically generated for the contents of this SCCList<ModifiableContent>importContent(String idValue, Map<String,Object> additionalParameters, org.slf4j.Logger logger)Import a content from remote values.protected File[]internalSearch(Map<String,Object> searchParameters, org.slf4j.Logger logger)Search values and return the result without any treatment.Map<String,Map<String,Object>>search(Map<String,Object> searchParameters, int offset, int limit, List<Object> sort, org.slf4j.Logger logger)Search the data to import from parameters.-
Methods inherited from class org.ametys.plugins.odfsync.cdmfr.AbstractCDMFrSynchronizableContentsCollection
additionalCommonOperations, getIdField, getLocalAndExternalFields, service, synchronizeContent, updateSyncInformations
-
Methods inherited from class org.ametys.plugins.contentio.synchronize.AbstractSynchronizableContentsCollection
_deleteContents, _getAdditionalInputsForContentCreation, _getContentPathQuery, _getExpressionsList, _hasSomethingChanged, _isParamNotEmpty, _logSynchronizationResult, _removeEmptyParameters, createContentAction, deleteUnexistingContents, empty, getSynchronizationResult, populate, sendErrorMail, validateContent
-
Methods inherited from class org.ametys.plugins.contentio.synchronize.AbstractStaticSynchronizableContentsCollection
_parseLanguages, _parseParameters, _transformRemoteValuesCardinality, configureStaticParams, getContentPrefix, getContentType, getId, getInitialActionId, getLabel, getLanguages, getParameterValues, getReportMails, getRestrictedField, getSearchModelConfiguration, getSynchronizeActionId, getSynchronizeCollectionModelId, getSynchronizingContentOperator, getValidateActionId, getWorkflowName, removalSync, synchronizeExistingContentsOnly, validateAfterImport
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ametys.plugins.contentio.synchronize.SynchronizableContentsCollection
additionalImportOperations, additionalSynchronizeOperations
-
-
-
-
Field Detail
-
__PARAM_FOLDER
protected static final String __PARAM_FOLDER
Data source parameter : folder- See Also:
- Constant Field Values
-
_cocoonContext
protected Context _cocoonContext
The Cocoon context
-
_cdmfrFolder
protected File _cdmfrFolder
CDM-fr folder
-
_updatedContents
protected Set<String> _updatedContents
List of synchronized contents (to avoid a treatment twice or more)
-
-
Constructor Detail
-
CDMFrSynchronizableContentsCollection
public CDMFrSynchronizableContentsCollection()
-
-
Method Detail
-
contextualize
public void contextualize(Context context) throws ContextException
- Specified by:
contextualizein interfaceContextualizable- Throws:
ContextException
-
configure
public void configure(Configuration configuration) throws ConfigurationException
- Specified by:
configurein interfaceConfigurable- Overrides:
configurein classAbstractStaticSynchronizableContentsCollection- Throws:
ConfigurationException
-
_internalPopulate
protected List<ModifiableContent> _internalPopulate(org.slf4j.Logger logger)
Description copied from class:AbstractSynchronizableContentsCollectionInternal implementation ofAbstractSynchronizableContentsCollection.populate(Logger)- Overrides:
_internalPopulatein classAbstractCDMFrSynchronizableContentsCollection- Parameters:
logger- The logger- Returns:
- The list of created/synchronized contents
-
importContent
public List<ModifiableContent> importContent(String idValue, Map<String,Object> additionalParameters, org.slf4j.Logger logger) throws Exception
Description copied from interface:SynchronizableContentsCollectionImport a content from remote values.- Specified by:
importContentin interfaceSynchronizableContentsCollection- Parameters:
idValue- Id (for import/synchronization) of the content to importadditionalParameters- Additional parameterslogger- The logger- Returns:
- A list of created contents
- Throws:
Exception- if an error occurs.
-
_handleFile
protected Map<String,Object> _handleFile(File cdmfrFile, Map<String,Object> parameters, org.slf4j.Logger logger)
Handle the CDM-fr file to import all the programs and its dependencies containing into it.- Parameters:
cdmfrFile- The CDM-fr fileparameters- Parameters used to import the filelogger- The logger- Returns:
- The list of imported/synchronized programs
-
search
public Map<String,Map<String,Object>> search(Map<String,Object> searchParameters, int offset, int limit, List<Object> sort, org.slf4j.Logger logger)
Description copied from interface:SynchronizableContentsCollectionSearch the data to import from parameters.- Specified by:
searchin interfaceSynchronizableContentsCollection- Overrides:
searchin classAbstractCDMFrSynchronizableContentsCollection- Parameters:
searchParameters- Parameters for the searchoffset- Begin of the searchlimit- Number of resultssort- Sort of results (ignored for LDAP results)logger- The logger- Returns:
- A map of remote values by content
-
getTotalCount
public int getTotalCount(Map<String,Object> searchParameters, org.slf4j.Logger logger)
Description copied from interface:SynchronizableContentsCollectionReturn the total number of results for the search.- Specified by:
getTotalCountin interfaceSynchronizableContentsCollection- Overrides:
getTotalCountin classAbstractCDMFrSynchronizableContentsCollection- Parameters:
searchParameters- Parameters for the searchlogger- The logger- Returns:
- The total count
-
internalSearch
protected File[] internalSearch(Map<String,Object> searchParameters, org.slf4j.Logger logger)
Search values and return the result without any treatment.- Parameters:
searchParameters- Search parameters to restrict the searchlogger- The logger- Returns:
Filetab listing the available CDM-fr files corresponding to the filter.
-
configureDataSource
protected void configureDataSource(Configuration configuration) throws ConfigurationException
Description copied from class:AbstractStaticSynchronizableContentsCollectionConfigure the data source parameters.- Overrides:
configureDataSourcein classAbstractCDMFrSynchronizableContentsCollection- Parameters:
configuration- Configuration to read- Throws:
ConfigurationException- If an error occurs
-
configureSpecificParameters
protected void configureSpecificParameters()
Configure the specific parameters of this implementation of CDM-fr import.
-
configureSearchModel
protected void configureSearchModel()
Description copied from class:AbstractStaticSynchronizableContentsCollectionConfigure the search model used by SCCSearchTool.- Overrides:
configureSearchModelin classAbstractCDMFrSynchronizableContentsCollection
-
getContent
public ModifiableContent getContent(String lang, String idValue)
Description copied from interface:SynchronizableContentsCollectionGets the content in the repository- Specified by:
getContentin interfaceSynchronizableContentsCollection- Overrides:
getContentin classAbstractCDMFrSynchronizableContentsCollection- Parameters:
lang- the languageidValue- the content name- Returns:
- the content in the repository, or null if does not exist
-
handleRightAssignmentContext
public boolean handleRightAssignmentContext()
Description copied from interface:SynchronizableContentsCollectionReturn true if aRightAssignmentContextshould be automatically generated for the contents of this SCC- Specified by:
handleRightAssignmentContextin interfaceSynchronizableContentsCollection- Returns:
- true to automatically generate a
RightAssignmentContext. Return false if the rights of contents of this SCC are handle by its ownRightAssignmentContext
-
_getContentsToRemove
protected List<Content> _getContentsToRemove(AmetysObjectIterable<ModifiableContent> contents)
Description copied from class:AbstractSynchronizableContentsCollectionFilter the contents to remove.- Overrides:
_getContentsToRemovein classAbstractCDMFrSynchronizableContentsCollection- Parameters:
contents- The list of all the available contents- Returns:
- The
ListofContentto remove.
-
-