public IRemoteFileSystemRequest sendBrowseRequest(IFileID directoryOrFileID, IRemoteFileSystemListener listener) throws RemoteFileSystemException { Assert.isNotNull(directoryOrFileID); Assert.isNotNull(listener); URL url; try { url = directoryOrFileID.getURL(); } catch (final MalformedURLException e) { throw new RemoteFileSystemException(Messages.AbstractRetrieveFileTransfer_MalformedURLException); } IRemoteFileSystemBrowserContainerAdapter fileSystemBrowser = null; fileSystemBrowser = Activator.getDefault().getBrowseFileTransfer(url.getProtocol()); if (fileSystemBrowser == null) { if (url.getProtocol().equalsIgnoreCase("file")) { //$NON-NLS-1$ LocalFileSystemBrowser fsb = new LocalFileSystemBrowser(directoryOrFileID, listener); return fsb.sendBrowseRequest(); } URLFileSystemBrowser ufsb = new URLFileSystemBrowser(directoryOrFileID, listener, url, connectContext, proxy); return ufsb.sendBrowseRequest(); } // Set connect context fileSystemBrowser.setConnectContextForAuthentication(connectContext); // Set Proxy fileSystemBrowser.setProxy(proxy); return fileSystemBrowser.sendBrowseRequest(directoryOrFileID, listener); }