private T readFromDelegate() throws Exception { T item = delegate.read(); if(item instanceof ResourceAware){ ((ResourceAware) item).setResource(getCurrentResource()); } return item; }
private Map<Long, T> readContent() throws Exception { Map<Long, T> result = new HashMap<>(); try { reader.open(executionContext); int i = 0; for (T item = reader.read(); item != null; item = reader.read()) { Long index = null; if (item instanceof ItemIndexAware) { index = ((ItemIndexAware) item).getIndex(); LOGGER.trace("Retrieving existing index={}", index); } if (index == null) { index = new Long(i++); LOGGER.trace("Setting new index={}", index); } result.put(index, item); LOGGER.debug("Read content : line={}, item={}", index, item); } } finally { reader.close(); } return result; }
private T readFromDelegate() throws Exception { T item = delegate.read(); if(item instanceof ResourceAware){ ((ResourceAware) item).setResource(getCurrentResource()); } return item; }
@Override public T read() throws Exception { final Resource currentResource = resourceLocator.getResource(executionContext); if (previousResource == null || !previousResource.equals(currentResource)) { delegate.close(); delegate.setResource(currentResource); delegate.open(executionContext); previousResource = currentResource; } return delegate.read(); }