Class PlatformContentItemService
- java.lang.Object
-
- com.flowable.platform.security.service.AbstractPlatformSecurityService
-
- com.flowable.platform.service.content.PlatformContentItemService
-
- All Implemented Interfaces:
PermissionServiceRegistryAware
,Aware
@Transactional public class PlatformContentItemService extends AbstractPlatformSecurityService
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PlatformContentItemService.CustomFolderPath
-
Field Summary
Fields Modifier and Type Field Description protected CasePermissionService
casePermissionService
protected CmmnEngine
cmmnEngine
protected CmmnHistoryService
cmmnHistoryService
protected ContentEngine
contentEngine
protected CoreContentService
contentService
protected String
defaultGroupForPublicFolder
protected FolderNameParser
folderNameParser
protected HistoryService
historyService
protected MetadataService
metadataService
protected com.fasterxml.jackson.databind.ObjectMapper
objectMapper
static String
PERSONAL_FOLDER_NAME
protected PlatformEntityLinkService
platformEntityLinkService
protected ProcessEngine
processEngine
protected ProcessPermissionService
processPermissionService
protected String
publicFolderName
protected RenditionService
renditionService
static String
SCOPE_TYPE_USER
protected SimpleContentTypeMapper
simpleTypeMapper
protected TaskPermissionService
taskPermissionService
-
Fields inherited from class com.flowable.platform.security.service.AbstractPlatformSecurityService
additionalAdminUsers, CASE_PREFIX, cmmnRepositoryService, cmmnRuntimeService, cmmnTaskService, defaultSecurityPolicyKey, defaultSecurityPolicyModel, inspectEnabled, permissionServiceRegistry, platformSecurityInterceptor, policyRepositoryService, PROCESS_PREFIX, repositoryService, runtimeService, SECURITY_POLICY_MODEL, TASK_PREFIX, taskService
-
-
Constructor Summary
Constructors Constructor Description PlatformContentItemService(String publicFolderName, String defaultGroupForPublicFolder)
-
Method Summary
-
Methods inherited from class com.flowable.platform.security.service.AbstractPlatformSecurityService
currentUserHasAdminRights, currentUserIsSuperAdmin, fetchCasePermissionMappings, fetchCasePermissionMappings, fetchCaseSecurityPolicyModel, fetchPermissions, fetchPermissionsForTask, fetchProcessPermissionMappings, fetchProcessPermissionMappings, fetchProcessSecurityPolicyModel, fetchSecurityPolicyModel, fetchSecurityPolicyModel, fetchSecurityPolicyModelForCaseInstance, fetchSecurityPolicyModelForProcessInstance, fetchSecurityPolicyModelForTask, fetchSecurityPolicyModelForTask, fetchTaskPermissionMappings, fetchTaskPermissionMappings, fetchTaskPermissionMappings, fetchTaskPermissionMappingsForCase, fetchTaskPermissionMappingsForProcess, fetchTaskSecurityPolicyModelForCase, fetchTaskSecurityPolicyModelForProcess, filterPermissionsForRole, getCmmnExtensionElementValue, getCurrentGroupKeys, getCurrentSecurityScope, getCurrentTenantId, getCurrentUserId, getDefaultSecurityPolicyModel, getExtensionElementValue, getSecurityPolicyModelByKey, groupOrUserMatches, groupOrUserMatches, hasAnyMatchingIdentityLink, hasAssigneeOrOwnerIdentityLink, hasPermissionForEntityLinks, hasPermissionForHistoricEntityLinks, setPermissionServiceRegistry, translatePermissionForScope
-
-
-
-
Field Detail
-
PERSONAL_FOLDER_NAME
public static final String PERSONAL_FOLDER_NAME
- See Also:
- Constant Field Values
-
SCOPE_TYPE_USER
public static final String SCOPE_TYPE_USER
- See Also:
- Constant Field Values
-
contentService
@Autowired protected CoreContentService contentService
-
contentEngine
@Autowired protected ContentEngine contentEngine
-
platformEntityLinkService
@Autowired protected PlatformEntityLinkService platformEntityLinkService
-
historyService
@Autowired protected HistoryService historyService
-
processEngine
@Autowired protected ProcessEngine processEngine
-
cmmnHistoryService
@Autowired protected CmmnHistoryService cmmnHistoryService
-
cmmnEngine
@Autowired protected CmmnEngine cmmnEngine
-
taskPermissionService
@Autowired protected TaskPermissionService taskPermissionService
-
processPermissionService
@Autowired protected ProcessPermissionService processPermissionService
-
casePermissionService
@Autowired protected CasePermissionService casePermissionService
-
simpleTypeMapper
@Autowired protected SimpleContentTypeMapper simpleTypeMapper
-
renditionService
@Autowired protected RenditionService renditionService
-
metadataService
@Autowired protected MetadataService metadataService
-
folderNameParser
@Autowired protected FolderNameParser folderNameParser
-
objectMapper
@Autowired protected com.fasterxml.jackson.databind.ObjectMapper objectMapper
-
publicFolderName
protected String publicFolderName
-
defaultGroupForPublicFolder
protected String defaultGroupForPublicFolder
-
-
Method Detail
-
createProvisionalContentItem
public ContentItemRepresentation createProvisionalContentItem(MultipartFile file, String userId)
-
createContentItem
public ContentItemRepresentation createContentItem(MultipartFile file, String userId)
-
createNewContentItemVersion
public ContentItemRepresentation createNewContentItemVersion(String contentItemId, MultipartFile file, boolean validateContentItemPermissions)
-
revertContentItemVersion
public ContentItemRepresentation revertContentItemVersion(String contentItemId, String previousContentItemId)
-
getParentFolderWithScope
public CoreContentItem getParentFolderWithScope(CoreContentItem contentItem)
-
getOrCreateParentFolder
public CoreContentItem getOrCreateParentFolder(CoreContentItem contentItem)
-
getScopeTypeFromContentItem
protected String getScopeTypeFromContentItem(CoreContentItem contentItem)
-
getScopeIdFromContentItem
protected String getScopeIdFromContentItem(CoreContentItem contentItem)
-
getFolderFromScope
public CoreContentItem getFolderFromScope(String scopeType, String scopeId, String tenantId)
-
migrateContentItemsWithoutParentFolder
protected void migrateContentItemsWithoutParentFolder(String parentFolderId, String scopeType, String scopeId)
-
getRootFolder
public CoreContentItem getRootFolder(String tenantId)
-
getWorkFolder
public CoreContentItem getWorkFolder(String tenantId)
-
getTaskCustomFolderPath
protected PlatformContentItemService.CustomFolderPath getTaskCustomFolderPath(String taskId)
-
getProcessTaskCustomFolderPath
protected PlatformContentItemService.CustomFolderPath getProcessTaskCustomFolderPath(TaskInfo task, String taskDefinitionKey, String processDefinitionId, String processInstanceId, String tenantId)
-
getCaseCustomFolderPath
protected PlatformContentItemService.CustomFolderPath getCaseCustomFolderPath(String caseInstanceId)
-
getProcessCustomFolderPath
protected PlatformContentItemService.CustomFolderPath getProcessCustomFolderPath(String processInstanceId)
-
getCaseTaskCustomFolderPath
protected PlatformContentItemService.CustomFolderPath getCaseTaskCustomFolderPath(TaskInfo task, String taskDefinitionKey, String caseDefinitionId, String scopeId, String tenantId)
-
createFolderFromPath
public CoreContentItem createFolderFromPath(PlatformContentItemService.CustomFolderPath path, String scopeType, String scopeId)
-
createCustomFolderHierarchy
protected CoreContentItem createCustomFolderHierarchy(List<HierarchyLevel> hierarchy, String parentFolderId, String tenantId)
-
createFolderFromInstance
public CoreContentItem createFolderFromInstance(String scopeType, String scopeId)
-
createCaseFolderHierarchy
public CoreContentItem createCaseFolderHierarchy(String caseInstanceId)
-
createProcessFolderHierarchy
public CoreContentItem createProcessFolderHierarchy(String processInstanceId)
-
createTaskFolderHierarchy
public CoreContentItem createTaskFolderHierarchy(String taskId)
-
getHierarchyFromEntityLinks
protected List<HierarchyLevel> getHierarchyFromEntityLinks(String scopeType, String scopeId)
-
buildHierarchy
protected void buildHierarchy(String scopeType, String scopeId, List<HierarchyLevel> hierarchy)
-
getHierarchyLevel
protected HierarchyLevel getHierarchyLevel(String scopeType, String scopeId)
-
getCaseInstance
protected CaseInstanceRepresentation getCaseInstance(String caseInstanceId)
-
getProcessInstance
protected ProcessInstanceRepresentation getProcessInstance(String processInstanceId)
-
createWorkFolderHierarchy
protected CoreContentItem createWorkFolderHierarchy(List<HierarchyLevel> hierarchyLevels, String parentFolderId)
-
validateContentItemPermissions
public void validateContentItemPermissions(CoreContentItem dbContentItem, boolean requiresScope)
-
createProvisionalContentItemOnTask
public ContentItemRepresentation createProvisionalContentItemOnTask(String taskId, String userId, MultipartFile file, boolean provisional)
-
createContentItemOnTask
public ContentItemRepresentation createContentItemOnTask(String taskId, String userId, MultipartFile file)
-
createNewContentItemVersionOnTask
public ContentItemRepresentation createNewContentItemVersionOnTask(String taskId, String contentItemId, MultipartFile file)
-
createContentItemOnProcessInstance
public ContentItemRepresentation createContentItemOnProcessInstance(String processInstanceId, String userId, MultipartFile file)
-
createNewContentItemVersionOnProcessInstance
public ContentItemRepresentation createNewContentItemVersionOnProcessInstance(String processInstanceId, String contentItemId, MultipartFile file)
-
createContentItemOnCaseInstance
public ContentItemRepresentation createContentItemOnCaseInstance(String caseInstanceId, String userId, MultipartFile file)
-
createNewContentItemVersionOnCaseInstance
public ContentItemRepresentation createNewContentItemVersionOnCaseInstance(String caseInstanceId, String contentItemId, MultipartFile file)
-
getContentItem
public CoreContentItem getContentItem(String contentItemId)
-
validateViewPermissions
public void validateViewPermissions(CoreContentItem contentItem)
-
getContentItemWithFolderPath
public ContentItemRepresentation getContentItemWithFolderPath(String folderTreeValue)
-
getContentItemsForTask
public List<ContentItemRepresentation> getContentItemsForTask(String taskId)
-
validateTaskPermissions
protected void validateTaskPermissions(String taskId)
-
getContentItemsForCase
public List<ContentItemRepresentation> getContentItemsForCase(String caseInstanceId)
-
validateCasePermissions
protected void validateCasePermissions(String caseInstanceId)
-
validateUserPermissions
protected void validateUserPermissions(String userId)
-
getContentItemsForProcessInstance
public List<ContentItemRepresentation> getContentItemsForProcessInstance(String processInstanceId)
-
validateProcessPermissions
protected void validateProcessPermissions(String processInstanceId)
-
handleContentItem
public void handleContentItem(String variableName, Object variableValue, Map<String,Object> variables)
-
findContentItem
public ContentItem findContentItem(String contentItemId, Map<String,Object> variables)
-
findContentItem
public ContentItem findContentItem(String contentItemId, Object variableValue)
-
copyAndTransformSavedFormInstanceValues
public void copyAndTransformSavedFormInstanceValues(Map<String,Object> startFormVariables, Map<String,Object> variableMap)
-
findContentItemInSavedFormInstanceValues
public ContentItem findContentItemInSavedFormInstanceValues(String contentItemId, Map<String,Object> startFormVariables)
-
getContentItemVersions
public List<ContentItemRepresentation> getContentItemVersions(String contentItemId)
-
createResultRepresentation
protected List<ContentItemRepresentation> createResultRepresentation(List<CoreContentItem> results)
-
createContentItem
protected ContentItemRepresentation createContentItem(MultipartFile file, String userId, String taskId, String processInstanceId, String caseId, boolean provisional)
-
createNewContentItemVersion
protected ContentItemRepresentation createNewContentItemVersion(MultipartFile file, CoreContentItem dbContentItem)
-
revertContentItemVersion
protected ContentItemRepresentation revertContentItemVersion(CoreContentItem dbContentItem, CoreContentItem previousDbContentItem)
-
fillContentItemInJsonNode
protected void fillContentItemInJsonNode(com.fasterxml.jackson.databind.JsonNode itemNode)
-
findContentItemInJsonNode
protected ContentItem findContentItemInJsonNode(String contentItemId, com.fasterxml.jackson.databind.JsonNode itemNode)
-
getFileName
protected String getFileName(MultipartFile file)
-
createContentItemResponse
protected ContentItemRepresentation createContentItemResponse(CoreContentItem contentItem)
-
getContentTypeForFileExtension
protected String getContentTypeForFileExtension(MultipartFile file)
-
getFolderItemsForScope
public FolderResponse getFolderItemsForScope(String scopeId, String scopeType)
-
getChildFolderItems
public FolderResponse getChildFolderItems(String contentItemId, String parentFolderId, Boolean showFolders)
-
getChildFolderTreeItems
public FolderResponse getChildFolderTreeItems(String folderTreeValue)
-
createSimpleContentItem
public void createSimpleContentItem(CoreContentItem contentItem)
-
createBinaryContentItem
public void createBinaryContentItem(CoreContentItem contentItem, MultipartFile file)
-
isReadOnly
public boolean isReadOnly(CoreContentItem f)
-
isReadOnly
public boolean isReadOnly(FolderItem f)
-
getParentPaths
public List<FolderPath> getParentPaths(CoreContentItem current, String parentFolderId)
-
getFirstLevelContentItems
public List<FolderItem> getFirstLevelContentItems(String contentItemId)
-
createPersonalFolder
protected CoreContentItem createPersonalFolder(String contentItemId)
-
getChildContentItems
public List<FolderItem> getChildContentItems(String contentItemId, Boolean showFolders)
-
validateContentItemPermission
protected void validateContentItemPermission(ContentItem contentItem)
-
validateContentItemPermission
protected void validateContentItemPermission(String scopeId, String scopeType)
-
addChildFiles
protected void addChildFiles(String contentItemId, List<FolderItem> childFiles)
-
-