public abstract class ProbedStorageProvider extends Object implements StorageProvider, MetricsProbed
Modifier and Type | Field and Description |
---|---|
protected Metric |
metric |
protected MetricsTable |
metricsTable |
protected StorageProvider |
storageProvider |
DEFAULT_MAX_RESULTS, DEFAULT_MIMETYPE, ISO8601_DATE_FORMAT, PROPERTIES_CONTENT_CHECKSUM, PROPERTIES_CONTENT_CREATOR, PROPERTIES_CONTENT_FILE_CREATED, PROPERTIES_CONTENT_FILE_LAST_ACCESSED, PROPERTIES_CONTENT_FILE_MODIFIED, PROPERTIES_CONTENT_FILE_PATH, PROPERTIES_CONTENT_MD5, PROPERTIES_CONTENT_MIMETYPE, PROPERTIES_CONTENT_MODIFIED, PROPERTIES_CONTENT_SIZE, PROPERTIES_COPY_SOURCE, PROPERTIES_COPY_SOURCE_STORE, PROPERTIES_SPACE_ACL, PROPERTIES_SPACE_ACL_GROUP, PROPERTIES_SPACE_ACL_PUBLIC, PROPERTIES_SPACE_COUNT, PROPERTIES_SPACE_CREATED, PROPERTIES_SPACE_SIZE, PROPERTIES_STREAMING_HOST
Constructor and Description |
---|
ProbedStorageProvider() |
Modifier and Type | Method and Description |
---|---|
String |
addContent(String spaceId,
String contentId,
String contentMimeType,
Map<String,String> userProperties,
long contentSize,
String contentChecksum,
InputStream content)
Adds content to a space.
|
String |
copyContent(String sourceSpaceId,
String sourceContentId,
String destSpaceId,
String destContentId)
This method copies the content item found in source-space with the id of
source-content-id into the dest-space, naming it to dest-content-id.
|
void |
createSpace(String spaceId)
Creates a new space.
|
void |
deleteContent(String spaceId,
String contentId)
Removes content from a space.
|
void |
deleteSpace(String spaceId)
Deletes a space.
|
InputStream |
getContent(String spaceId,
String contentId)
Gets content from a space.
|
Map<String,String> |
getContentProperties(String spaceId,
String contentId)
Retrieves the properties associated with content.
|
protected abstract MetricsProbed |
getProbedCore() |
Map<String,AclType> |
getSpaceACLs(String spaceId)
Retrieves the ACLs associated with a space.
|
Iterator<String> |
getSpaceContents(String spaceId,
String prefix)
Provides access to the content files within a space.
|
List<String> |
getSpaceContentsChunked(String spaceId,
String prefix,
long maxResults,
String marker)
Provides a listing of the content files within a space.
|
Map<String,String> |
getSpaceProperties(String spaceId)
Retrieves the properties associated with a space.
|
Iterator<String> |
getSpaces()
Provides a listing of all spaces owned by a customer.
|
void |
setContentProperties(String spaceId,
String contentId,
Map<String,String> contentProperties)
Sets the properties associated with content.
|
void |
setMetricsTable(MetricsTable metricsTable) |
void |
setSpaceACLs(String spaceId,
Map<String,AclType> spaceACLs)
Sets the ACLs associated with a space.
|
protected void |
setStorageProvider(StorageProvider storageProvider) |
protected void |
startMetric(String methodName) |
protected void |
stopMetric(String methodName) |
protected StorageProvider storageProvider
protected MetricsTable metricsTable
protected Metric metric
protected abstract MetricsProbed getProbedCore()
protected void startMetric(String methodName)
protected void stopMetric(String methodName)
public void setMetricsTable(MetricsTable metricsTable)
setMetricsTable
in interface MetricsProbed
protected void setStorageProvider(StorageProvider storageProvider)
public String addContent(String spaceId, String contentId, String contentMimeType, Map<String,String> userProperties, long contentSize, String contentChecksum, InputStream content) throws StorageException
StorageProvider
addContent
in interface StorageProvider
spaceId
- - ID of the spacecontentId
- - ID of the content in the spacecontentMimeType
- - the MIME type of the content being addeduserProperties
- - the metadata associated with the contentcontentSize
- - the file size (in bytes) of the content being addedcontentChecksum
- - the MD5 checksum of the content being added (null if no checksum is known)content
- - content to addNotFoundException
- if space with ID spaceId does not existStorageException
- if errors occurpublic String copyContent(String sourceSpaceId, String sourceContentId, String destSpaceId, String destContentId)
StorageProvider
copyContent
in interface StorageProvider
sourceSpaceId
- of content to copysourceContentId
- of content to copydestSpaceId
- where copied content will end updestContentId
- given to copied contentpublic void createSpace(String spaceId) throws StorageException
StorageProvider
createSpace
in interface StorageProvider
spaceId
- - ID of the spaceStorageException
- if space with ID spaceId already existspublic void deleteContent(String spaceId, String contentId) throws StorageException
StorageProvider
deleteContent
in interface StorageProvider
spaceId
- - ID of the spacecontentId
- - ID of the content in the spaceNotFoundException
- if space with ID spaceId does not exist or the
content item with ID contentId does not existStorageException
- if errors occurpublic void deleteSpace(String spaceId) throws StorageException
StorageProvider
deleteSpace
in interface StorageProvider
spaceId
- - ID of the spaceNotFoundException
- if space with ID spaceId does not existStorageException
- if errors occurpublic InputStream getContent(String spaceId, String contentId) throws StorageException
StorageProvider
getContent
in interface StorageProvider
spaceId
- - ID of the spacecontentId
- - ID of the content in the spaceNotFoundException
- if space with ID spaceId does not exist or the
content item with ID contentId does not existStorageException
- if errors occurpublic Map<String,String> getContentProperties(String spaceId, String contentId) throws StorageException
StorageProvider
getContentProperties
in interface StorageProvider
spaceId
- - ID of the spacecontentId
- - ID of the content in the spaceNotFoundException
- if space with ID spaceId does not exist or the
content item with ID contentId does not existStorageException
- if errors occurpublic Iterator<String> getSpaceContents(String spaceId, String prefix) throws StorageException
StorageProvider
getSpaceContents
in interface StorageProvider
spaceId
- - ID of the spaceprefix
- - The prefix of the content id (null for no constraints)NotFoundException
- if space with ID spaceId does not existStorageException
- if errors occurpublic List<String> getSpaceContentsChunked(String spaceId, String prefix, long maxResults, String marker) throws StorageException
StorageProvider
getSpaceContentsChunked
in interface StorageProvider
spaceId
- - ID of the spaceprefix
- - Only retrieve content IDs with this prefix (null for all content ids)maxResults
- - The maximum number of content IDs to return in the list (0 indicates default (1000))marker
- - The content ID marking the last item in the previous set (null indicates the first set of ids)NotFoundException
- if space with ID spaceId does not existStorageException
- if errors occurpublic Map<String,String> getSpaceProperties(String spaceId) throws StorageException
StorageProvider
getSpaceProperties
in interface StorageProvider
spaceId
- - ID of the spaceNotFoundException
- if space with ID spaceId does not existStorageException
- if errors occurpublic Iterator<String> getSpaces() throws StorageException
StorageProvider
getSpaces
in interface StorageProvider
StorageException
public void setContentProperties(String spaceId, String contentId, Map<String,String> contentProperties) throws StorageException
StorageProvider
setContentProperties
in interface StorageProvider
spaceId
- - ID of the spacecontentId
- - ID of the content in the spacecontentProperties
- - new content propertiesNotFoundException
- if space with ID spaceId does not exist or the
content item with ID contentId does not existStorageException
- if errors occurpublic Map<String,AclType> getSpaceACLs(String spaceId)
StorageProvider
getSpaceACLs
in interface StorageProvider
spaceId
- - ID of the spacepublic void setSpaceACLs(String spaceId, Map<String,AclType> spaceACLs)
StorageProvider
setSpaceACLs
in interface StorageProvider
spaceId
- - ID of the spacespaceACLs
- - Updated space ACL. Note, null or empty arg spaceACLs
will 'clear' the space ACLs.Copyright © 2009–2014 DuraSpace. All rights reserved.