mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-09 10:05:24 +02:00
Fixing 162511 - FTP file service does not process filter strings correctly
This commit is contained in:
parent
52ef89604f
commit
71ec46bac5
1 changed files with 12 additions and 3 deletions
|
@ -22,6 +22,7 @@
|
||||||
* Javier Montalvo Orus (Symbian) - Fixing 161238 - [ftp] expand "My Home" node on
|
* Javier Montalvo Orus (Symbian) - Fixing 161238 - [ftp] expand "My Home" node on
|
||||||
* ftp.ibiblio.org as anonymous fails
|
* ftp.ibiblio.org as anonymous fails
|
||||||
* Javier Montalvo Orus (Symbian) - Fixing 160922 - create folder/file fails for FTP service
|
* Javier Montalvo Orus (Symbian) - Fixing 160922 - create folder/file fails for FTP service
|
||||||
|
* David Dykstal (IBM) - Fixing 162511 - FTP file service does not process filter strings correctly
|
||||||
********************************************************************************/
|
********************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.rse.services.files.ftp;
|
package org.eclipse.rse.services.files.ftp;
|
||||||
|
@ -39,6 +40,8 @@ import org.apache.commons.net.ftp.FTP;
|
||||||
import org.apache.commons.net.ftp.FTPClient;
|
import org.apache.commons.net.ftp.FTPClient;
|
||||||
import org.apache.commons.net.ftp.FTPFile;
|
import org.apache.commons.net.ftp.FTPFile;
|
||||||
import org.eclipse.core.runtime.IProgressMonitor;
|
import org.eclipse.core.runtime.IProgressMonitor;
|
||||||
|
import org.eclipse.rse.services.clientserver.FileTypeMatcher;
|
||||||
|
import org.eclipse.rse.services.clientserver.IMatcher;
|
||||||
import org.eclipse.rse.services.clientserver.NamePatternMatcher;
|
import org.eclipse.rse.services.clientserver.NamePatternMatcher;
|
||||||
import org.eclipse.rse.services.clientserver.messages.SystemMessageException;
|
import org.eclipse.rse.services.clientserver.messages.SystemMessageException;
|
||||||
import org.eclipse.rse.services.files.AbstractFileService;
|
import org.eclipse.rse.services.files.AbstractFileService;
|
||||||
|
@ -176,8 +179,13 @@ public class FTPService extends AbstractFileService implements IFileService, IFT
|
||||||
{
|
{
|
||||||
fileFilter = "*";
|
fileFilter = "*";
|
||||||
}
|
}
|
||||||
|
IMatcher filematcher = null;
|
||||||
NamePatternMatcher filematcher = new NamePatternMatcher(fileFilter, true, true);
|
if (fileFilter.endsWith(",")) {
|
||||||
|
String[] types = fileFilter.split(",");
|
||||||
|
filematcher = new FileTypeMatcher(types, true);
|
||||||
|
} else {
|
||||||
|
filematcher = new NamePatternMatcher(fileFilter, true, true);
|
||||||
|
}
|
||||||
List results = new ArrayList();
|
List results = new ArrayList();
|
||||||
|
|
||||||
try
|
try
|
||||||
|
@ -206,7 +214,8 @@ public class FTPService extends AbstractFileService implements IFileService, IFT
|
||||||
|
|
||||||
for(int i=0; i<ftpFiles.length; i++)
|
for(int i=0; i<ftpFiles.length; i++)
|
||||||
{
|
{
|
||||||
if(filematcher.matches(ftpFiles[i].getName()))
|
FTPFile f = ftpFiles[i];
|
||||||
|
if(filematcher.matches(f.getName()) || f.isDirectory())
|
||||||
{
|
{
|
||||||
results.add(new FTPHostFile(parentPath,ftpFiles[i],systemName));
|
results.add(new FTPHostFile(parentPath,ftpFiles[i],systemName));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue