Interface SharedBackend
- 
- All Known Implementing Classes:
 AbstractSharedBackend,FSBackend
public interface SharedBackend 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddMetadataRecord(java.io.File input, java.lang.String name)Adds a metadata record with the specified namevoidaddMetadataRecord(java.io.InputStream input, java.lang.String name)Adds a metadata record with the specified namevoidclose()Close backend and release resources like database connection if any.voiddeleteAllMetadataRecords(java.lang.String prefix)Deletes all the metadata records with the specified prefix.booleandeleteMetadataRecord(java.lang.String name)Deletes the metadata record with the specified namevoiddeleteRecord(DataIdentifier identifier)Delete record identified by identifier.booleanexists(DataIdentifier identifier)This method check the existence of record in backend.java.util.Iterator<DataIdentifier>getAllIdentifiers()Returns identifiers of all records that exists in backend.java.util.List<DataRecord>getAllMetadataRecords(java.lang.String prefix)Gets all the metadata with a specified prefix.java.util.Iterator<DataRecord>getAllRecords()Returns a list of all DataRecordsDataRecordgetMetadataRecord(java.lang.String name)Gets the metadata of the specified name.DataRecordgetRecord(DataIdentifier id)Gets the record with the specified identifiervoidinit()InitializebooleanmetadataRecordExists(java.lang.String name)Checks if the metadata record with the specified name exists.java.io.InputStreamread(DataIdentifier identifier)Return inputstream of record identified by identifier.voidwrite(DataIdentifier identifier, java.io.File file)Stores file to backend with identifier used as key. 
 - 
 
- 
- 
Method Detail
- 
read
java.io.InputStream read(DataIdentifier identifier) throws DataStoreException
Return inputstream of record identified by identifier.- Parameters:
 identifier- identifier of record.- Returns:
 - inputstream of the record.
 - Throws:
 DataStoreException- if record not found or any error.
 
- 
write
void write(DataIdentifier identifier, java.io.File file) throws DataStoreException
Stores file to backend with identifier used as key. If key pre-exists, it updates the timestamp of the key.- Parameters:
 identifier- key of the filefile- file that would be stored in backend.- Throws:
 DataStoreException- for any error.
 
- 
getRecord
DataRecord getRecord(DataIdentifier id) throws DataStoreException
Gets the record with the specified identifier- Parameters:
 id- the record identifier- Returns:
 - the metadata DataRecord
 - Throws:
 DataStoreException
 
- 
getAllIdentifiers
java.util.Iterator<DataIdentifier> getAllIdentifiers() throws DataStoreException
Returns identifiers of all records that exists in backend.- Returns:
 - iterator consisting of all identifiers
 - Throws:
 DataStoreException
 
- 
getAllRecords
java.util.Iterator<DataRecord> getAllRecords() throws DataStoreException
Returns a list of all DataRecords- Returns:
 - iterator over DataRecords
 - Throws:
 DataStoreException
 
- 
exists
boolean exists(DataIdentifier identifier) throws DataStoreException
This method check the existence of record in backend.- Parameters:
 identifier- identifier to be checked.- Returns:
 - true if records exists else false.
 - Throws:
 DataStoreException
 
- 
close
void close() throws DataStoreExceptionClose backend and release resources like database connection if any.- Throws:
 DataStoreException
 
- 
deleteRecord
void deleteRecord(DataIdentifier identifier) throws DataStoreException
Delete record identified by identifier. No-op if identifier not found.- Parameters:
 identifier-- Throws:
 DataStoreException
 
- 
addMetadataRecord
void addMetadataRecord(java.io.InputStream input, java.lang.String name) throws DataStoreExceptionAdds a metadata record with the specified name- Parameters:
 input- the record input streamname- the name- Throws:
 DataStoreException
 
- 
addMetadataRecord
void addMetadataRecord(java.io.File input, java.lang.String name) throws DataStoreExceptionAdds a metadata record with the specified name- Parameters:
 input- the record filename- the name- Throws:
 DataStoreException
 
- 
getMetadataRecord
DataRecord getMetadataRecord(java.lang.String name)
Gets the metadata of the specified name.- Parameters:
 name- the name of the record- Returns:
 - the metadata DataRecord
 
 
- 
getAllMetadataRecords
java.util.List<DataRecord> getAllMetadataRecords(java.lang.String prefix)
Gets all the metadata with a specified prefix.- Parameters:
 prefix- the prefix of the records to retrieve- Returns:
 - list of all the metadata DataRecords
 
 
- 
deleteMetadataRecord
boolean deleteMetadataRecord(java.lang.String name)
Deletes the metadata record with the specified name- Parameters:
 name- the name of the record- Returns:
 - boolean to indicate success of deletion
 
 
- 
deleteAllMetadataRecords
void deleteAllMetadataRecords(java.lang.String prefix)
Deletes all the metadata records with the specified prefix.- Parameters:
 prefix- the prefix of the record
 
- 
metadataRecordExists
boolean metadataRecordExists(java.lang.String name)
Checks if the metadata record with the specified name exists.- Parameters:
 name- the name of the record- Returns:
 - whether record exists
 
 
- 
init
void init() throws DataStoreException
Initialize- Throws:
 DataStoreException
 
 - 
 
 -