Class SimpleFileSystemContentStorage
java.lang.Object
com.flowable.content.engine.impl.AbstractContentStorage
com.flowable.content.engine.impl.fs.SimpleFileSystemContentStorage
- All Implemented Interfaces:
ContentStorage
public class SimpleFileSystemContentStorage
extends AbstractContentStorage
implements ContentStorage
(Very) simple implementation of the
ContentStorage
that relies on the passed metadata to store content.
Under a root folder, a division between 'task' and 'process-instance' content is made. New content gets a new UUID assigned and is placed in one of these folders.
The id of the returned ContentObject
indicates in which folder it is stored.- Author:
- Joram Barrez
-
Nested Class Summary
Nested classes/interfaces inherited from class com.flowable.content.engine.impl.AbstractContentStorage
AbstractContentStorage.MapBasedContentObjectStorageMetadata
-
Field Summary
Modifier and TypeFieldDescriptionprotected File
protected File
protected File
protected File
protected File
Fields inherited from class com.flowable.content.engine.impl.AbstractContentStorage
CASE_PREFIX, PROCESS_INSTANCE_PREFIX, TASK_PREFIX, TYPE_CASE_INSTANCE, TYPE_PROCESS_INSTANCE, TYPE_TASK, TYPE_UNCATEGORIZED, UNCATEGORIZED_PREFIX
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncreateContentObject
(InputStream contentStream, ContentObjectStorageMetadata metaData) protected File
void
protected File
getContentFile
(String id) protected File
getContentFile
(ContentObjectStorageMetadata metaData, String contentId) protected File
internalCreateOrGetFolder
(File parentFolder, String id) updateContentObject
(String id, InputStream contentStream, ContentObjectStorageMetadata metaData) protected File
validateOrCreateFolder
(String folderName) protected void
Methods inherited from class com.flowable.content.engine.impl.AbstractContentStorage
convertMetaDataToMap, createContentObject, determineType, generateContentId, updateContentObject
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.flowable.content.api.ContentStorage
createContentObject, updateContentObject
-
Field Details
-
contentFolderRoot
-
taskFolder
-
processInstanceFolder
-
caseFolder
-
uncategorizedFolder
-
-
Constructor Details
-
SimpleFileSystemContentStorage
-
-
Method Details
-
validateOrCreateSubfolders
protected void validateOrCreateSubfolders() -
validateOrCreateFolder
-
createContentObject
public ContentObject createContentObject(InputStream contentStream, ContentObjectStorageMetadata metaData) - Specified by:
createContentObject
in interfaceContentStorage
-
updateContentObject
public ContentObject updateContentObject(String id, InputStream contentStream, ContentObjectStorageMetadata metaData) - Specified by:
updateContentObject
in interfaceContentStorage
-
getContentObject
- Specified by:
getContentObject
in interfaceContentStorage
-
getContentFile
-
getMetaData
- Specified by:
getMetaData
in interfaceContentStorage
-
deleteContentObject
- Specified by:
deleteContentObject
in interfaceContentStorage
-
getContentStoreName
- Specified by:
getContentStoreName
in interfaceContentStorage
-
getContentFile
-
createOrGetFolderBasedOnMetaData
-
internalCreateOrGetFolder
-