/** * Return the length of record from {@link LocalCache} if available, * otherwise retrieve it from {@link Backend}. */ public long getLength(final DataIdentifier identifier) throws DataStoreException { String fileName = getFileName(identifier); Long length = recLenCache.get(identifier); if (length != null) { LOG.trace(" identifier [{}] length fetched from recLengthCache", identifier); return length; } else if ((length = cache.getFileLength(fileName)) != null) { LOG.trace(" identifier [{}] length fetched from local cache", identifier); recLenCache.put(identifier, length); return length; } else { length = backend.getLength(identifier); LOG.debug(" identifier [{}] length fetched from backend", identifier); recLenCache.put(identifier, length); asyncDownload(identifier); return length; } }
/** * Return the length of record from {@link LocalCache} if available, * otherwise retrieve it from {@link Backend}. */ public long getLength(final DataIdentifier identifier) throws DataStoreException { String fileName = getFileName(identifier); Long length = recLenCache.get(identifier); if (length != null) { LOG.trace(" identifier [{}] length fetched from recLengthCache", identifier); return length; } else if ((length = cache.getFileLength(fileName)) != null) { LOG.trace(" identifier [{}] length fetched from local cache", identifier); recLenCache.put(identifier, length); return length; } else { length = backend.getLength(identifier); LOG.debug(" identifier [{}] length fetched from backend", identifier); recLenCache.put(identifier, length); asyncDownload(identifier); return length; } }
/** * Return the length of record from {@link LocalCache} if available, * otherwise retrieve it from {@link Backend}. */ public long getLength(final DataIdentifier identifier) throws DataStoreException { String fileName = getFileName(identifier); Long length = recLenCache.get(identifier); if (length != null) { LOG.trace(" identifier [{}] length fetched from recLengthCache", identifier); return length; } else if ((length = cache.getFileLength(fileName)) != null) { LOG.trace(" identifier [{}] length fetched from local cache", identifier); recLenCache.put(identifier, length); return length; } else { length = backend.getLength(identifier); LOG.debug(" identifier [{}] length fetched from backend", identifier); recLenCache.put(identifier, length); asyncDownload(identifier); return length; } }