@Override protected byte[] getOrCreateReferenceKey() throws DataStoreException { return backend.getOrCreateReferenceKey(); }
/** * Delegates the call to the backend to retrieve reference. * * @return */ public String getReference() { return backend.getReferenceFromIdentifier(identifier); }
/**------------------------ SharedDataStore methods -----------------------------------------**/ @Override public void addMetadataRecord(InputStream stream, String name) throws DataStoreException { backend.addMetadataRecord(stream, name); }
@Override public void close() throws DataStoreException { backend.close(); cache.close(); }
@Override public void deleteRecord(DataIdentifier dataIdentifier) throws DataStoreException { cache.invalidate(dataIdentifier.toString()); backend.deleteRecord(dataIdentifier); }
@Override public boolean deleteMetadataRecord(String name) { return backend.deleteMetadataRecord(name); }
@Override public void deleteAllMetadataRecords(String prefix) { backend.deleteAllMetadataRecords(prefix); }
/** * In rare cases may include some duplicates in cases where async staged uploads complete * during iteration. * * @return Iterator over all ids available * @throws DataStoreException */ @Override public Iterator<DataIdentifier> getAllIdentifiers() throws DataStoreException { return Iterators.concat(Iterators.transform(cache.getStagingCache().getAllIdentifiers(), new Function<String, DataIdentifier>() { @Nullable @Override public DataIdentifier apply(@Nullable String id) { return new DataIdentifier(id); } }), backend.getAllIdentifiers()); }
/** * Look in the backend for a record matching the given identifier. Returns true * if such a record exists. * * @param identifier - An identifier for the record. * @return true if a record for the provided identifier can be found. */ public boolean exists(final DataIdentifier identifier) { try { if (identifier != null) { return backend.exists(identifier); } } catch (DataStoreException e) { LOG.warn(String.format("Data Store Exception caught checking for %s in pending uploads", identifier), e); } return false; }
@Override public void close() throws DataStoreException { backend.close(); cache.close(); }
@Override public void deleteRecord(DataIdentifier dataIdentifier) throws DataStoreException { cache.invalidate(dataIdentifier.toString()); backend.deleteRecord(dataIdentifier); }
@Override public boolean deleteMetadataRecord(String name) { return backend.deleteMetadataRecord(name); }
@Override public void deleteAllMetadataRecords(String prefix) { backend.deleteAllMetadataRecords(prefix); }
/** * In rare cases may include some duplicates in cases where async staged uploads complete * during iteration. * * @return Iterator over all ids available * @throws DataStoreException */ @Override public Iterator<DataIdentifier> getAllIdentifiers() throws DataStoreException { return Iterators.concat(Iterators.transform(cache.getStagingCache().getAllIdentifiers(), new Function<String, DataIdentifier>() { @Nullable @Override public DataIdentifier apply(@Nullable String id) { return new DataIdentifier(id); } }), backend.getAllIdentifiers()); }
/** * Look in the backend for a record matching the given identifier. Returns true * if such a record exists. * * @param identifier - An identifier for the record. * @return true if a record for the provided identifier can be found. */ public boolean exists(final DataIdentifier identifier) { try { if (identifier != null) { return backend.exists(identifier); } } catch (DataStoreException e) { LOG.warn(String.format("Data Store Exception caught checking for %s in pending uploads", identifier), e); } return false; }
@Override protected byte[] getOrCreateReferenceKey() throws DataStoreException { return backend.getOrCreateReferenceKey(); }
/** * Delegates the call to the backend to retrieve reference. * * @return */ public String getReference() { return backend.getReferenceFromIdentifier(identifier); }
/**------------------------ SharedDataStore methods -----------------------------------------**/ @Override public void addMetadataRecord(InputStream stream, String name) throws DataStoreException { backend.addMetadataRecord(stream, name); }
@Override public void close() throws DataStoreException { backend.close(); cache.close(); }
@Override public void deleteRecord(DataIdentifier dataIdentifier) throws DataStoreException { cache.invalidate(dataIdentifier.toString()); backend.deleteRecord(dataIdentifier); }