public class FilesystemStorageStrategyImpl extends Object implements FilesystemStorageStrategy
| Modifier and Type | Field and Description |
|---|---|
protected String |
baseDirectory |
protected Provider<BlobBuilder> |
blobBuilders |
protected FilesystemBlobKeyValidator |
filesystemBlobKeyValidator |
protected FilesystemContainerNameValidator |
filesystemContainerNameValidator |
protected Logger |
logger |
| Modifier | Constructor and Description |
|---|---|
protected |
FilesystemStorageStrategyImpl(Provider<BlobBuilder> blobBuilders,
String baseDir,
FilesystemContainerNameValidator filesystemContainerNameValidator,
FilesystemBlobKeyValidator filesystemBlobKeyValidator) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
blobExists(String container,
String key) |
protected String |
buildPathStartingFromBaseDir(String... pathTokens)
Facility method used to concatenate path tokens normalizing separators
|
void |
clearContainer(String container)
Empty the directory of its content (files and subdirectories)
|
void |
clearContainer(String container,
ListContainerOptions options)
Like
FilesystemStorageStrategy.clearContainer(String) except you can use options to do things like recursive
deletes, or clear at a different path than root. |
boolean |
containerExists(String container)
Checks if a container exists
|
long |
countBlobs(String container,
ListContainerOptions options)
Counts number of blobs inside a container
|
boolean |
createContainer(String container)
Creates a new container
|
void |
createDirectory(String container,
String directory)
Creates a folder or a directory marker depending on the service
|
protected boolean |
createDirectoryWithResult(String container,
String directory)
Creates a directory and returns the result
|
void |
deleteContainer(String container)
Deletes a container and all its content
|
void |
deleteDirectory(String container,
String directory)
Deletes a folder or a directory marker depending on the service
|
boolean |
directoryExists(String container,
String directory)
Determines if a directory exists
|
Iterable<String> |
getAllContainerNames()
Return an iterator that reports all the containers under base path
|
Iterable<String> |
getBlobKeysInsideContainer(String container)
Returns all the blobs key inside a container
|
File |
getFileForBlobKey(String container,
String blobKey)
Returns a
File object that links to the blob |
Blob |
newBlob(String name)
Creates a new blob
|
void |
removeBlob(String container,
String blobKey) |
void |
writePayloadOnFile(String container,
String blobKey,
Payload payload)
|
protected Logger logger
protected final Provider<BlobBuilder> blobBuilders
protected final String baseDirectory
protected final FilesystemContainerNameValidator filesystemContainerNameValidator
protected final FilesystemBlobKeyValidator filesystemBlobKeyValidator
@Inject protected FilesystemStorageStrategyImpl(Provider<BlobBuilder> blobBuilders, @Named(value="jclouds.filesystem.basedir") String baseDir, FilesystemContainerNameValidator filesystemContainerNameValidator, FilesystemBlobKeyValidator filesystemBlobKeyValidator)
public boolean containerExists(String container)
FilesystemStorageStrategycontainerExists in interface FilesystemStorageStrategypublic boolean blobExists(String container, String key)
blobExists in interface FilesystemStorageStrategypublic boolean createContainer(String container)
FilesystemStorageStrategycreateContainer in interface FilesystemStorageStrategypublic void deleteContainer(String container)
FilesystemStorageStrategydeleteContainer in interface FilesystemStorageStrategypublic void clearContainer(String container)
clearContainer in interface FilesystemStorageStrategycontainer - public void clearContainer(String container, ListContainerOptions options)
FilesystemStorageStrategyFilesystemStorageStrategy.clearContainer(String) except you can use options to do things like recursive
deletes, or clear at a different path than root.clearContainer in interface FilesystemStorageStrategycontainer - what to clearoptions - recursion and path to clearpublic Blob newBlob(String name)
FilesystemStorageStrategynewBlob in interface FilesystemStorageStrategypublic void removeBlob(String container, String blobKey)
removeBlob in interface FilesystemStorageStrategypublic Iterable<String> getAllContainerNames()
getAllContainerNames in interface FilesystemStorageStrategypublic File getFileForBlobKey(String container, String blobKey)
File object that links to the blobgetFileForBlobKey in interface FilesystemStorageStrategycontainer - blobKey - public void writePayloadOnFile(String container, String blobKey, Payload payload) throws IOException
writePayloadOnFile in interface FilesystemStorageStrategycontainer - blobKey - payload - IOExceptionpublic Iterable<String> getBlobKeysInsideContainer(String container) throws IOException
getBlobKeysInsideContainer in interface FilesystemStorageStrategycontainer - IOExceptionpublic boolean directoryExists(String container, String directory)
FilesystemStorageStrategydirectoryExists in interface FilesystemStorageStrategycontainer - container where the directory residesdirectory - full path to the directorypublic void createDirectory(String container, String directory)
FilesystemStorageStrategycreateDirectory in interface FilesystemStorageStrategycontainer - container to create the directory indirectory - full path to the directorypublic void deleteDirectory(String container, String directory)
FilesystemStorageStrategydeleteDirectory in interface FilesystemStorageStrategycontainer - container to delete the directory fromdirectory - full path to the directory to deletepublic long countBlobs(String container, ListContainerOptions options)
FilesystemStorageStrategycountBlobs in interface FilesystemStorageStrategyprotected String buildPathStartingFromBaseDir(String... pathTokens)
pathTokens - all the string in the proper order that must be concatenated in order to obtain the
filenameCopyright © 2009-2012 jclouds. All Rights Reserved.