public class SimpleFileSystemContentStorage extends Object implements ContentStorage
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.| Modifier and Type | Class and Description |
|---|---|
protected static class |
SimpleFileSystemContentStorage.MapBasedContentObjectStorageMetadata |
| Modifier and Type | Field and Description |
|---|---|
static String |
CASE_PREFIX |
protected File |
caseFolder |
protected File |
contentFolderRoot |
static String |
PROCESS_INSTANCE_PREFIX |
protected File |
processInstanceFolder |
static String |
TASK_PREFIX |
protected File |
taskFolder |
static String |
TYPE_CASE_INSTANCE |
static String |
TYPE_PROCESS_INSTANCE |
static String |
TYPE_TASK |
static String |
TYPE_UNCATEGORIZED |
static String |
UNCATEGORIZED_PREFIX |
protected File |
uncategorizedFolder |
| Constructor and Description |
|---|
SimpleFileSystemContentStorage(File contentFolderRoot) |
public static final String TYPE_TASK
public static final String TYPE_PROCESS_INSTANCE
public static final String TYPE_CASE_INSTANCE
public static final String TYPE_UNCATEGORIZED
public static final String TASK_PREFIX
public static final String PROCESS_INSTANCE_PREFIX
public static final String CASE_PREFIX
public static final String UNCATEGORIZED_PREFIX
protected File contentFolderRoot
protected File taskFolder
protected File processInstanceFolder
protected File caseFolder
protected File uncategorizedFolder
public SimpleFileSystemContentStorage(File contentFolderRoot)
protected void validateOrCreateSubfolders()
public ContentObject createContentObject(InputStream contentStream, Map<String,Object> metadata)
createContentObject in interface ContentStoragepublic ContentObject createContentObject(InputStream contentStream, ContentObjectStorageMetadata metaData)
createContentObject in interface ContentStorageprotected String generateContentId(String uuid, ContentObjectStorageMetadata metadata)
public ContentObject updateContentObject(String id, InputStream contentStream, Map<String,Object> metaData)
updateContentObject in interface ContentStoragepublic ContentObject updateContentObject(String id, InputStream contentStream, ContentObjectStorageMetadata metaData)
updateContentObject in interface ContentStoragepublic ContentObject getContentObject(String id)
getContentObject in interface ContentStoragepublic Map<String,Object> getMetaData()
getMetaData in interface ContentStoragepublic void deleteContentObject(String id)
deleteContentObject in interface ContentStoragepublic String getContentStoreName()
getContentStoreName in interface ContentStorageprotected File getContentFile(ContentObjectStorageMetadata metaData, String contentId)
protected String determineType(ContentObjectStorageMetadata metaData)
protected File createOrGetFolderBasedOnMetaData(ContentObjectStorageMetadata metaData)