} else {
List<ReadNodeRequest> fromSourceCommands = new ArrayList<ReadNodeRequest>(numPaths);
for (Path pathInSource : pathsInSource) {
fromSourceCommands.add(new ReadNodeRequest(new Location(pathInSource)));
}
Request request = CompositeRequest.with(fromSourceCommands);
sourceConnection.execute(context, request);
for (ReadNodeRequest fromSource : fromSourceCommands) {
if (fromSource.hasError()) continue;
DateTime expTime = fromSource.getCachePolicy() == null ? expirationTime : getCurrentTimeInUtc().plus(fromSource.getCachePolicy().getTimeToLive(),
TimeUnit.MILLISECONDS);