Constructor and Description |
---|
S3Backend() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Close backend and release resources like database connection if any.
|
Set<DataIdentifier> |
deleteAllOlderThan(long min)
Delete all records which are older than timestamp.
|
void |
deleteRecord(DataIdentifier identifier)
Delete record identified by identifier.
|
boolean |
exists(DataIdentifier identifier)
Check if record identified by identifier exists in Amazon S3.
|
boolean |
exists(DataIdentifier identifier,
boolean touch)
This method check the existence of record in backend.
|
Iterator<DataIdentifier> |
getAllIdentifiers()
Returns identifiers of all records that exists in backend.
|
String |
getBucket() |
long |
getLastModified(DataIdentifier identifier)
Return lastModified of record identified by identifier.
|
long |
getLength(DataIdentifier identifier)
Return length of record identified by identifier.
|
void |
init(CachingDataStore store,
String homeDir,
Properties prop) |
void |
init(CachingDataStore store,
String homeDir,
String config)
Initialize S3Backend.
|
InputStream |
read(DataIdentifier identifier)
Return inputstream of record identified by identifier.
|
void |
setBucket(String bucket) |
void |
setProperties(Properties properties)
Properties used to configure the backend.
|
void |
touch(DataIdentifier identifier,
long minModifiedDate)
Update the lastModified of record if it's lastModified < minModifiedDate.
|
void |
touchAsync(DataIdentifier identifier,
long minModifiedDate,
AsyncTouchCallback callback)
Update the lastModified of record if it's lastModified < minModifiedDate
asynchronously.
|
void |
write(DataIdentifier identifier,
File file)
It uploads file to Amazon S3.
|
void |
writeAsync(DataIdentifier identifier,
File file,
AsyncUploadCallback callback)
Write file to backend in asynchronous mode.
|
public void init(CachingDataStore store, String homeDir, String config) throws DataStoreException
init
in interface Backend
store
- CachingDataStore
homeDir
- path of repository home dir.config
- path of config property file.DataStoreException
public void init(CachingDataStore store, String homeDir, Properties prop) throws DataStoreException
DataStoreException
public void write(DataIdentifier identifier, File file) throws DataStoreException
write
in interface Backend
identifier
- key of the filefile
- file that would be stored in backend.DataStoreException
- for any error.public void writeAsync(DataIdentifier identifier, File file, AsyncUploadCallback callback) throws DataStoreException
Backend
writeAsync
in interface Backend
callback
- Callback interface to called after upload succeed or failed.DataStoreException
public boolean exists(DataIdentifier identifier) throws DataStoreException
exists
in interface Backend
identifier
- identifier to be checked.DataStoreException
public boolean exists(DataIdentifier identifier, boolean touch) throws DataStoreException
Backend
exists
in interface Backend
DataStoreException
public void touchAsync(DataIdentifier identifier, long minModifiedDate, AsyncTouchCallback callback) throws DataStoreException
Backend
AsyncTouchCallback
methods. If identifier's lastModified >
minModified AsyncTouchCallback.onAbort(AsyncTouchResult)
is
called. Any exception is communicated through
AsyncTouchCallback.onFailure(AsyncTouchResult)
. On successful
update of lastModified,
AsyncTouchCallback.onSuccess(AsyncTouchResult)
is invoked.touchAsync
in interface Backend
DataStoreException
public void touch(DataIdentifier identifier, long minModifiedDate) throws DataStoreException
Backend
touch
in interface Backend
DataStoreException
public InputStream read(DataIdentifier identifier) throws DataStoreException
Backend
read
in interface Backend
identifier
- identifier of record.DataStoreException
- if record not found or any error.public Iterator<DataIdentifier> getAllIdentifiers() throws DataStoreException
Backend
getAllIdentifiers
in interface Backend
DataStoreException
public long getLastModified(DataIdentifier identifier) throws DataStoreException
Backend
getLastModified
in interface Backend
identifier
- identifier of record.DataStoreException
- if record not found or any error.public long getLength(DataIdentifier identifier) throws DataStoreException
Backend
getLength
in interface Backend
identifier
- identifier of record.DataStoreException
- if record not found or any error.public void deleteRecord(DataIdentifier identifier) throws DataStoreException
Backend
deleteRecord
in interface Backend
DataStoreException
public Set<DataIdentifier> deleteAllOlderThan(long min) throws DataStoreException
Backend
deleteAllOlderThan
in interface Backend
Set
of identifiers which are deleted.DataStoreException
public void close()
Backend
public String getBucket()
public void setBucket(String bucket)
public void setProperties(Properties properties)
properties
- to configure S3BackendCopyright © 2004-2020 The Apache Software Foundation. All Rights Reserved.