@Override public AttributedList<Path> list(final Path directory, final ListProgressListener listener) throws BackgroundException { try { final Vault vault = registry.find(session, directory); if(vault.contains(directory)) { return vault.getFeature(session, ListService.class, proxy).list(directory, listener); } if(autodetect) { return new VaultFinderListService(session, proxy, new VaultFinderListProgressListener(lookup)).list(directory, listener); } return proxy.list(directory, listener); } catch(VaultUnlockCancelException e) { log.warn(String.format("Canceled loading vault %s. %s", e.getVault(), e.getDetail())); throw e; } }