diff --git a/rse/examples/org.eclipse.rse.examples.tutorial/src/samples/ui/propertypages/FolderInfoPropertyPage.java b/rse/examples/org.eclipse.rse.examples.tutorial/src/samples/ui/propertypages/FolderInfoPropertyPage.java index fbb95106d97..03c341d4505 100644 --- a/rse/examples/org.eclipse.rse.examples.tutorial/src/samples/ui/propertypages/FolderInfoPropertyPage.java +++ b/rse/examples/org.eclipse.rse.examples.tutorial/src/samples/ui/propertypages/FolderInfoPropertyPage.java @@ -17,6 +17,7 @@ package samples.ui.propertypages; import org.eclipse.rse.files.ui.propertypages.SystemAbstractRemoteFilePropertyPageExtensionAction; +import org.eclipse.rse.services.clientserver.messages.SystemMessageException; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile; import org.eclipse.rse.ui.SystemWidgetHelpers; import org.eclipse.swt.events.SelectionEvent; @@ -196,6 +197,8 @@ public class FolderInfoPropertyPage */ private void walkFolder(IRemoteFile currFolder) { + try + { IRemoteFile[] folders = currFolder.getParentRemoteFileSubSystem().listFoldersAndFiles(currFolder); if ((folders != null) && (folders.length>0)) { @@ -216,6 +219,11 @@ public class FolderInfoPropertyPage } } } + } + catch (SystemMessageException e) + { + + } } // end of walkFolder method } // end of inner class diff --git a/rse/plugins/org.eclipse.rse.eclipse.filesystem/src/org/eclipse/rse/eclipse/filesystem/RSEFileStoreRemoteFileWrapper.java b/rse/plugins/org.eclipse.rse.eclipse.filesystem/src/org/eclipse/rse/eclipse/filesystem/RSEFileStoreRemoteFileWrapper.java index b0c746247c8..7d14a411a58 100644 --- a/rse/plugins/org.eclipse.rse.eclipse.filesystem/src/org/eclipse/rse/eclipse/filesystem/RSEFileStoreRemoteFileWrapper.java +++ b/rse/plugins/org.eclipse.rse.eclipse.filesystem/src/org/eclipse/rse/eclipse/filesystem/RSEFileStoreRemoteFileWrapper.java @@ -49,6 +49,7 @@ import org.eclipse.osgi.util.NLS; import org.eclipse.rse.core.subsystems.RemoteChildrenContentsType; import org.eclipse.rse.files.ui.resources.SystemEditableRemoteFile; import org.eclipse.rse.files.ui.resources.UniversalFileTransferUtility; +import org.eclipse.rse.services.clientserver.messages.SystemMessageException; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileSubSystem; import org.eclipse.rse.subsystems.files.core.subsystems.RemoteFileEmpty; @@ -92,12 +93,19 @@ public class RSEFileStoreRemoteFileWrapper extends FileStore implements IFileSto } else { - IRemoteFile[] children = _subSystem.listFoldersAndFiles(_remoteFile); - names = new String[children.length]; - for (int i = 0; i < children.length; i++) + try { - names[i] = ((IRemoteFile)children[i]).getName(); - } + IRemoteFile[] children = _subSystem.listFoldersAndFiles(_remoteFile); + names = new String[children.length]; + for (int i = 0; i < children.length; i++) + { + names[i] = ((IRemoteFile)children[i]).getName(); + } + } + catch (SystemMessageException e) + { + names = new String[0]; + } } prefStore.setValue(ISystemPreferencesConstants.SHOWHIDDEN, false); return names; diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/actions/SystemExtractAction.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/actions/SystemExtractAction.java index bb9f6cbdfcd..05616435d78 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/actions/SystemExtractAction.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/actions/SystemExtractAction.java @@ -141,6 +141,8 @@ public class SystemExtractAction extends SystemBaseAction public void run(IProgressMonitor monitor) { + try + { IRemoteFile[] sources = sourceSS.listFoldersAndFiles(selection); for (int j = 0; j < sources.length && !monitor.isCanceled(); j++) { @@ -168,6 +170,12 @@ public class SystemExtractAction extends SystemBaseAction System.out.println("Could not extract " + sources[j].getAbsolutePath()); } } + } + catch (SystemMessageException e) + { + SystemMessageDialog dlg = new SystemMessageDialog(getShell(), e.getSystemMessage()); + dlg.open(); + } } } diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java index 720bc79faac..628da2ab96b 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java @@ -304,16 +304,23 @@ public class UniversalFileTransferUtility else { tempFolder = getTempFileFor(srcFileOrFolder); - IRemoteFile[] children = srcFS.listFoldersAndFiles(srcFileOrFolder); - - - SystemRemoteResourceSet childSet = new SystemRemoteResourceSet(srcFS, children); - SystemWorkspaceResourceSet childResults = copyRemoteResourcesToWorkspace(childSet, monitor); - if (childResults.hasMessage()) + try { - resultSet.setMessage(childResults.getMessage()); + IRemoteFile[] children = srcFS.listFoldersAndFiles(srcFileOrFolder); + + + SystemRemoteResourceSet childSet = new SystemRemoteResourceSet(srcFS, children); + SystemWorkspaceResourceSet childResults = copyRemoteResourcesToWorkspace(childSet, monitor); + if (childResults.hasMessage()) + { + resultSet.setMessage(childResults.getMessage()); + } + resultSet.addResource(tempFolder); + } + catch (SystemMessageException e) + { + e.printStackTrace(); } - resultSet.addResource(tempFolder); } } } @@ -461,7 +468,15 @@ public class UniversalFileTransferUtility else { tempFolder = getTempFileFor(srcFileOrFolder); - IRemoteFile[] children = srcFS.listFoldersAndFiles(srcFileOrFolder); + IRemoteFile[] children = null; + try + { + children = srcFS.listFoldersAndFiles(srcFileOrFolder); + } + catch (SystemMessageException e) + { + e.printStackTrace(); + } IResource[] childResources = new IResource[children.length]; if (children != null) diff --git a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/CommandEntryContentAssistProcessor.java b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/CommandEntryContentAssistProcessor.java index 68da0fa645f..210303866db 100644 --- a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/CommandEntryContentAssistProcessor.java +++ b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/CommandEntryContentAssistProcessor.java @@ -31,6 +31,7 @@ import org.eclipse.jface.text.contentassist.IContextInformation; import org.eclipse.jface.text.contentassist.IContextInformationValidator; import org.eclipse.rse.core.subsystems.RemoteChildrenContentsType; import org.eclipse.rse.internal.subsystems.shells.subsystems.RemoteCmdSubSystem; +import org.eclipse.rse.services.clientserver.messages.SystemMessageException; import org.eclipse.rse.subsystems.files.core.model.RemoteFileUtility; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileSubSystem; @@ -562,7 +563,13 @@ public class CommandEntryContentAssistProcessor implements IContentAssistProcess } else { - fileList = workingDirectory.getParentRemoteFileSubSystem().listFoldersAndFiles(workingDirectory, currentText + "*"); + try + { + fileList = workingDirectory.getParentRemoteFileSubSystem().listFoldersAndFiles(workingDirectory, currentText + "*"); + } + catch (SystemMessageException e) + { + } } //_provider.getChildren(workingDirectory); diff --git a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/servicesubsystem/FileServiceSubSystem.java b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/servicesubsystem/FileServiceSubSystem.java index fd4d3157b14..7098e4e3a1d 100644 --- a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/servicesubsystem/FileServiceSubSystem.java +++ b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/servicesubsystem/FileServiceSubSystem.java @@ -47,6 +47,7 @@ import org.eclipse.rse.subsystems.files.core.subsystems.IHostFileToRemoteFileAda import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileContext; import org.eclipse.rse.subsystems.files.core.subsystems.RemoteFileSubSystem; +import org.eclipse.rse.ui.ISystemMessages; import org.eclipse.rse.ui.RSEUIPlugin; import org.eclipse.rse.ui.messages.SystemMessageDialog; import org.eclipse.swt.widgets.Display; @@ -321,7 +322,7 @@ public final class FileServiceSubSystem extends RemoteFileSubSystem implements I * @param fileNameFilter The name pattern to subset the file list by, or null to return all files. * @param context The holder of state information */ - public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context) + public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context) throws SystemMessageException { String parentPath = null; if (parent != null) { @@ -329,15 +330,15 @@ public final class FileServiceSubSystem extends RemoteFileSubSystem implements I } else { parentPath = "/"; } - IHostFile[] results = null; - try + + if (!parent.canRead()) { - results = getFilesAndFolders(null, parentPath, fileNameFilter); - } - catch (SystemMessageException e) - { - + SystemMessage msg = RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_FOLDER_UNREADABLE).makeSubstitution(parentPath); + throw new SystemMessageException(msg); } + + IHostFile[] results = getFilesAndFolders(null, parentPath, fileNameFilter); + IRemoteFile[] farr = getHostFileToRemoteFileAdapter().convertToRemoteFiles(this, context, parent, results); parent.setContents(RemoteChildrenContentsType.getInstance(), fileNameFilter, farr); return farr; diff --git a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/IRemoteFileSubSystem.java b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/IRemoteFileSubSystem.java index 64591a1c7c3..60f0f00b321 100644 --- a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/IRemoteFileSubSystem.java +++ b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/IRemoteFileSubSystem.java @@ -108,38 +108,38 @@ public interface IRemoteFileSubSystem extends ISubSystem{ * Return a list of roots/drives on the remote system. * This version is called directly by users. */ - public IRemoteFile[] listRoots() throws InterruptedException; + public IRemoteFile[] listRoots() throws InterruptedException, SystemMessageException; /** * Return a list of all remote folders in the given parent folder on the remote system * @param parent The parent folder to list folders in */ - public IRemoteFile[] listFolders(IRemoteFile parent); + public IRemoteFile[] listFolders(IRemoteFile parent) throws SystemMessageException; /** * Return a full list of remote folders in the given parent folder on the remote system. * @param parent The parent folder to list folders in * @param fileNameFilter The name pattern for subsetting the file list when this folder is subsequently expanded */ - public IRemoteFile[] listFolders(IRemoteFile parent, String fileNameFilter); + public IRemoteFile[] listFolders(IRemoteFile parent, String fileNameFilter) throws SystemMessageException; /** * Return a list of all remote files in the given parent folder on the remote system * @param parent The parent folder to list files in */ - public IRemoteFile[] listFiles(IRemoteFile parent); + public IRemoteFile[] listFiles(IRemoteFile parent) throws SystemMessageException; /** * Return a list of remote files in the given folder, which match the given name pattern. * @param parent The parent folder to list files in * @param fileNameFilter The name pattern to subset the list by, or null to return all files. */ - public IRemoteFile[] listFiles(IRemoteFile parent, String fileNameFilter); + public IRemoteFile[] listFiles(IRemoteFile parent, String fileNameFilter) throws SystemMessageException; /** * Return a list of all remote folders and files in the given folder. The list is not subsetted. * @param parent The parent folder to list folders and files in */ - public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent); + public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent) throws SystemMessageException; /** * Return a list of remote folders and files in the given folder. Only file names are subsettable @@ -147,7 +147,7 @@ public interface IRemoteFileSubSystem extends ISubSystem{ * @param parent The parent folder to list folders and files in * @param fileNameFilter The name pattern to subset the file list by, or null to return all files. */ - public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter); + public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter) throws SystemMessageException; /** * Return a list of remote folders and files in the given folder. @@ -159,7 +159,7 @@ public interface IRemoteFileSubSystem extends ISubSystem{ * @param fileNameFilter The name pattern to subset the file list by, or null to return all files. * @param context The holder of state information */ - public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context); + public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context) throws SystemMessageException; /** * Return a subsetted list of remote folders in the given parent folder on the remote system. @@ -169,7 +169,7 @@ public interface IRemoteFileSubSystem extends ISubSystem{ * @param fileNameFilter The name pattern for subsetting the file list when this folder is subsequently expanded * @param context The holder of state information */ - public IRemoteFile[] listFolders(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context); + public IRemoteFile[] listFolders(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context) throws SystemMessageException; /** * Return a list of remote files in the given folder, which match the given name pattern. @@ -179,7 +179,7 @@ public interface IRemoteFileSubSystem extends ISubSystem{ * @param fileNameFilter The name pattern to subset the list by, or null to return all files. * @param context The holder of state information */ - public IRemoteFile[] listFiles(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context); + public IRemoteFile[] listFiles(IRemoteFile parent, String fileNameFilter, IRemoteFileContext context) throws SystemMessageException; /** * Given a search configuration, searches for its results. * @param searchConfig a search configuration. diff --git a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java index 6cf59efec87..488cc9bf717 100644 --- a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java +++ b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java @@ -608,7 +608,8 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi } Object[] children = null; - + try + { // if parent exists, get its children according to the filter if (parent != null && parentExists) { @@ -668,6 +669,12 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi msg.makeSubstitution(parent.getAbsolutePath()); children[0] = new SystemMessageObject(msg, ISystemMessageObject.MSGTYPE_ERROR, null); } + } + catch (SystemMessageException e) + { + children = new SystemMessageObject[1]; + children[0] = new SystemMessageObject(e.getSystemMessage(), ISystemMessageObject.MSGTYPE_ERROR, null); + } return children; } @@ -717,6 +724,8 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi this.monitor = monitor; RemoteFileFilterString fs = null; + try + { //System.out.println("Inside internalResolveFilterString for parent '"+parent+"' for filterstring '" + filterString+"'"); if (filterString == null) // this will be the case when we want to support merging of filter strings { @@ -774,13 +783,20 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi } else return new Object[] { - }; + };} + + catch (SystemMessageException e) + { + SystemMessageObject[] children = new SystemMessageObject[1]; + children[0] = new SystemMessageObject(e.getSystemMessage(), ISystemMessageObject.MSGTYPE_ERROR, null); + return children; + } } /** * Do one filter string relative resolve */ protected Object[] internalResolveOneFilterString(IProgressMonitor monitor, Object parent, RemoteFileFilterString fs, boolean sort) - throws java.lang.reflect.InvocationTargetException, java.lang.InterruptedException + throws java.lang.reflect.InvocationTargetException, java.lang.InterruptedException, SystemMessageException { currFilterString = fs; String filterString = fs.toStringNoSwitches(); @@ -826,7 +842,7 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi * Return a list of all remote folders in the given parent folder on the remote system * @param parent The parent folder to list folders in */ - public IRemoteFile[] listFolders(IRemoteFile parent) + public IRemoteFile[] listFolders(IRemoteFile parent) throws SystemMessageException { return listFolders(parent, null); } @@ -836,7 +852,7 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi * @param parent The parent folder to list folders in * @param fileNameFilter The name pattern for subsetting the file list when this folder is subsequently expanded */ - public IRemoteFile[] listFolders(IRemoteFile parent, String fileNameFilter) + public IRemoteFile[] listFolders(IRemoteFile parent, String fileNameFilter) throws SystemMessageException { RemoteFileFilterString filterString = new RemoteFileFilterString(getParentRemoteFileSubSystemConfiguration()); filterString.setPath(parent.getAbsolutePath()); @@ -853,7 +869,7 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi * Return a list of all remote files in the given parent folder on the remote system * @param parent The parent folder to list files in */ - public IRemoteFile[] listFiles(IRemoteFile parent) + public IRemoteFile[] listFiles(IRemoteFile parent) throws SystemMessageException { return listFiles(parent, null); } @@ -863,7 +879,7 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi * @param parent The parent folder to list files in * @param fileNameFilter The name pattern to subset the list by, or null to return all files. */ - public IRemoteFile[] listFiles(IRemoteFile parent, String fileNameFilter) + public IRemoteFile[] listFiles(IRemoteFile parent, String fileNameFilter) throws SystemMessageException { RemoteFileFilterString filterString = new RemoteFileFilterString(getParentRemoteFileSubSystemConfiguration()); filterString.setPath(parent.getAbsolutePath()); @@ -879,7 +895,7 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi * Return a list of all remote folders and files in the given folder. The list is not subsetted. * @param parent The parent folder to list folders and files in */ - public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent) + public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent) throws SystemMessageException { return listFoldersAndFiles(parent, (String) null); } @@ -892,7 +908,7 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi * @param parent The parent folder to list folders and files in * @param fileNameFilter The name pattern to subset the file list by, or null to return all files. */ - public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter) + public IRemoteFile[] listFoldersAndFiles(IRemoteFile parent, String fileNameFilter) throws SystemMessageException { diff --git a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/util/ValidatorFileUniqueName.java b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/util/ValidatorFileUniqueName.java index 40dc78bc8a7..6ef8e05ef04 100644 --- a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/util/ValidatorFileUniqueName.java +++ b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/util/ValidatorFileUniqueName.java @@ -18,6 +18,7 @@ package org.eclipse.rse.subsystems.files.core.util; import java.util.Vector; import org.eclipse.rse.services.clientserver.messages.SystemMessage; +import org.eclipse.rse.services.clientserver.messages.SystemMessageException; import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile; import org.eclipse.rse.ui.ISystemMessages; import org.eclipse.rse.ui.RSEUIPlugin; @@ -78,6 +79,8 @@ public class ValidatorFileUniqueName isFolder ? RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_VALIDATE_FOLDERNAME_NOTVALID) : RSEUIPlugin.getPluginMessage(ISystemMessages.MSG_VALIDATE_FILENAME_NOTVALID) ); + try + { IRemoteFile[] contents = parentFolder.getParentRemoteFileSubSystem().listFoldersAndFiles(parentFolder); if (contents!=null) { @@ -86,6 +89,10 @@ public class ValidatorFileUniqueName names[idx] = contents[idx].getName(); setExistingNamesList(names); } + } + catch (SystemMessageException e) + { + } //shell.setCursor(null); org.eclipse.rse.ui.dialogs.SystemPromptDialog.setDisplayCursor(shell, null); diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/ISystemMessages.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/ISystemMessages.java index 333c5c2771f..0612ba7e806 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/ISystemMessages.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/ISystemMessages.java @@ -425,6 +425,8 @@ public interface ISystemMessages public static final String MSG_DOWNLOAD_ALREADY_OPEN_IN_EDITOR = "RSEF5009"; //$NON-NLS-1$ public static final String MSG_UPLOAD_FILE_EXISTS = "RSEF5012"; //$NON-NLS-1$ + public static final String MSG_FOLDER_UNREADABLE = "RSEF5020"; + // General error message public static final String MSG_ERROR_GENERAL = "RSEO1002"; //$NON-NLS-1$ diff --git a/rse/plugins/org.eclipse.rse.ui/systemmessages.xml b/rse/plugins/org.eclipse.rse.ui/systemmessages.xml index 64066aee7f8..730aee59f18 100644 --- a/rse/plugins/org.eclipse.rse.ui/systemmessages.xml +++ b/rse/plugins/org.eclipse.rse.ui/systemmessages.xml @@ -1070,6 +1070,12 @@ Contributors: Parent folder %1 does not exist. Verify that the correct path was entered. + + + + Folder %1 is not readable. Cannot expand + +