public interface Backend
CachingDataStore
.Modifier and Type | Method and Description |
---|---|
void |
close()
Close backend and release resources like database connection if any.
|
Set<DataIdentifier> |
deleteAllOlderThan(long timestamp)
Delete all records which are older than timestamp.
|
void |
deleteRecord(DataIdentifier identifier)
Delete record identified by identifier.
|
boolean |
exists(DataIdentifier identifier)
This method check the existence of record in backend.
|
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.
|
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,
String config)
This method initialize backend with the configuration.
|
InputStream |
read(DataIdentifier identifier)
Return inputstream of record identified by identifier.
|
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)
Stores file to backend with identifier used as key.
|
void |
writeAsync(DataIdentifier identifier,
File file,
AsyncUploadCallback callback)
Write file to backend in asynchronous mode.
|
void init(CachingDataStore store, String homeDir, String config) throws DataStoreException
store
- CachingDataStore
homeDir
- path of repository home dir.config
- path of config property file.DataStoreException
InputStream read(DataIdentifier identifier) throws DataStoreException
identifier
- identifier of record.DataStoreException
- if record not found or any error.long getLength(DataIdentifier identifier) throws DataStoreException
identifier
- identifier of record.DataStoreException
- if record not found or any error.long getLastModified(DataIdentifier identifier) throws DataStoreException
identifier
- identifier of record.DataStoreException
- if record not found or any error.void write(DataIdentifier identifier, File file) throws DataStoreException
identifier
- key of the filefile
- file that would be stored in backend.DataStoreException
- for any error.void writeAsync(DataIdentifier identifier, File file, AsyncUploadCallback callback) throws DataStoreException
identifier
- file
- callback
- Callback interface to called after upload succeed or failed.DataStoreException
Iterator<DataIdentifier> getAllIdentifiers() throws DataStoreException
DataStoreException
boolean exists(DataIdentifier identifier, boolean touch) throws DataStoreException
identifier
- DataStoreException
boolean exists(DataIdentifier identifier) throws DataStoreException
identifier
- identifier to be checked.DataStoreException
void touch(DataIdentifier identifier, long minModifiedDate) throws DataStoreException
identifier
- minModifiedDate
- DataStoreException
void touchAsync(DataIdentifier identifier, long minModifiedDate, AsyncTouchCallback callback) throws DataStoreException
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.identifier
- minModifiedDate
- callback
- DataStoreException
void close() throws DataStoreException
DataStoreException
Set<DataIdentifier> deleteAllOlderThan(long timestamp) throws DataStoreException
timestamp
- Set
of identifiers which are deleted.DataStoreException
void deleteRecord(DataIdentifier identifier) throws DataStoreException
identifier
- DataStoreException
Copyright © 2004–2021 The Apache Software Foundation. All rights reserved.