Class DocumentRoutingTreePersister
java.lang.Object
org.nuxeo.ecm.platform.routing.core.impl.DocumentRoutingTreePersister
- All Implemented Interfaces:
DocumentRoutingPersister
The default persister. It persists the
DocumentRoute
in a tree hierarchy ressembling the current date. New
model created from instance are stored in the personal workspace of the user.- Author:
- arussel
-
Field Summary
Fields inherited from interface org.nuxeo.ecm.platform.routing.api.DocumentRoutingPersister
DocumentRouteInstanceRootName
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionCreates a blankDocumentRoute
instance from a model.protected DocumentModel
createDocumentRoutesStructure
(String routeStructureDocType, String id, CoreSession session) Finds the first domain by name, and creates under it the root container for the structure containing the route instances.protected DocumentModel
createModelsRoutesStructure
(String routeStructureDocType, String id, CoreSession session) Create the rootModels under to root document.getACEs()
protected DocumentModel
getDocumentRoutesStructure
(String type, CoreSession session) getNewModelName
(DocumentModel instance) Return the new name of a model when it is created from an instance.Will get, and create if it does not exists the root document in whichDocumentRoute
structure will be created.getParentFolderForDocumentRouteInstance
(DocumentModel document, CoreSession session) Get or create the parent folder for aDocumentRoute
route instance.Gets or creates the parent folder for aDocumentRoute
route instance.getParentFolderForNewModel
(CoreSession session, DocumentModel instance) Returns a folder in which new model, created from an instance of route will be stored.protected UserManager
saveDocumentRouteInstanceAsNewModel
(DocumentModel routeInstance, DocumentModel parentFolder, String newName, CoreSession session) protected DocumentModel
undoReadOnlySecurityPolicy
(DocumentModel instance, CoreSession session)
-
Constructor Details
-
DocumentRoutingTreePersister
public DocumentRoutingTreePersister()
-
-
Method Details
-
getParentFolderForDocumentRouteInstance
public DocumentModel getParentFolderForDocumentRouteInstance(DocumentModel document, CoreSession session) Description copied from interface:DocumentRoutingPersister
Get or create the parent folder for aDocumentRoute
route instance.- Specified by:
getParentFolderForDocumentRouteInstance
in interfaceDocumentRoutingPersister
- Parameters:
document
- TheDocumentRoute
model from which the instance will be created. Its metadata may be used when creating the parent.- Returns:
- The parent folder in which the
DocumentRoute
will be persisted.
-
createDocumentRouteInstanceFromDocumentRouteModel
public DocumentModel createDocumentRouteInstanceFromDocumentRouteModel(DocumentModel model, CoreSession session) Description copied from interface:DocumentRoutingPersister
Creates a blankDocumentRoute
instance from a model.- Specified by:
createDocumentRouteInstanceFromDocumentRouteModel
in interfaceDocumentRoutingPersister
- Parameters:
model
- the model- Returns:
- The created
DocumentRoute
-
saveDocumentRouteInstanceAsNewModel
public DocumentModel saveDocumentRouteInstanceAsNewModel(DocumentModel routeInstance, DocumentModel parentFolder, String newName, CoreSession session) - Specified by:
saveDocumentRouteInstanceAsNewModel
in interfaceDocumentRoutingPersister
-
getOrCreateRootOfDocumentRouteInstanceStructure
Description copied from interface:DocumentRoutingPersister
Will get, and create if it does not exists the root document in whichDocumentRoute
structure will be created.- Specified by:
getOrCreateRootOfDocumentRouteInstanceStructure
in interfaceDocumentRoutingPersister
- Parameters:
session
- The session use to get or create the document.- Returns:
- The root of the
DocumentRoute
structure.
-
createDocumentRoutesStructure
protected DocumentModel createDocumentRoutesStructure(String routeStructureDocType, String id, CoreSession session) Finds the first domain by name, and creates under it the root container for the structure containing the route instances. -
createModelsRoutesStructure
protected DocumentModel createModelsRoutesStructure(String routeStructureDocType, String id, CoreSession session) Create the rootModels under to root document. Grant READ to everyone on the root models ; workflow availability is specified on each route -
getACEs
-
getUserManager
-
getDocumentRoutesStructure
-
getParentFolderForNewModel
Description copied from interface:DocumentRoutingPersister
Returns a folder in which new model, created from an instance of route will be stored.- Specified by:
getParentFolderForNewModel
in interfaceDocumentRoutingPersister
- Parameters:
session
- the session of the userinstance
- the instance that will be persisted as new model.
-
getNewModelName
Description copied from interface:DocumentRoutingPersister
Return the new name of a model when it is created from an instance.- Specified by:
getNewModelName
in interfaceDocumentRoutingPersister
- Returns:
- the new name
- See Also:
-
undoReadOnlySecurityPolicy
-
getParentFolderForDocumentRouteModels
Description copied from interface:DocumentRoutingPersister
Gets or creates the parent folder for aDocumentRoute
route instance.- Specified by:
getParentFolderForDocumentRouteModels
in interfaceDocumentRoutingPersister
- Returns:
- The parent folder in which the
DocumentRoute
will be persisted.
-