Java 类org.apache.commons.net.ftp.FTPClientConfig 实例源码

项目:AndroidRobot    文件:FtpUtil.java   
/**
 * @return 判断是否登入成功
 * */
public boolean ftpLogin() {
    boolean isLogin = false;
    FTPClientConfig ftpClientConfig = new FTPClientConfig();
    ftpClientConfig.setServerTimeZoneId(TimeZone.getDefault().getID());
    this.ftpClient.setControlEncoding("GBK");
    this.ftpClient.configure(ftpClientConfig);
    try {
        if (this.intPort > 0) {
            this.ftpClient.connect(this.strIp, this.intPort);
        } else {
            this.ftpClient.connect(this.strIp);
        }
        // FTP服务器连接回答
        int reply = this.ftpClient.getReplyCode();
        if (!FTPReply.isPositiveCompletion(reply)) {
            this.ftpClient.disconnect();
            System.out.println("登录FTP服务失败!");

            return isLogin;
        }
        this.ftpClient.login(this.user, this.password);
        // 设置传输协议
        this.ftpClient.enterLocalPassiveMode();
        this.ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
        System.out.println("恭喜" + this.user + "成功登陆FTP服务器");
        //logger.info("恭喜" + this.user + "成功登陆FTP服务器");
        isLogin = true;
    } catch (Exception e) {
        e.printStackTrace();
        System.out.println(this.user + "登录FTP服务失败!" + e.getMessage());
        //logger.error(this.user + "登录FTP服务失败!" + e.getMessage());
    }
    this.ftpClient.setBufferSize(1024 * 2);
    this.ftpClient.setDataTimeout(30 * 1000);
    return isLogin;
}
项目:legstar-zosupload-maven-plugin    文件:FtpZosClient.java   
/**
 * No-arg constructor.
 */
public FtpZosClient() {
    _ftpClient = new FTPClient();
    FTPClientConfig ftpConf = new FTPClientConfig(FTPClientConfig.SYST_MVS);
    ftpConf.setServerTimeZoneId("GMT");
    _ftpClient.configure(ftpConf);
}
项目:cambodia    文件:FtpUtil.java   
/**
     * Login to the FTP Server
     */
    public boolean login() {
        FTPClientConfig fcc = new FTPClientConfig();
        fcc.setServerTimeZoneId(TimeZone.getDefault().getID());
        ftpClient.setControlEncoding(encoding);
        ftpClient.configure(fcc);
        try {
            if (port > 0) {
                ftpClient.connect(hostname, port);
            } else {
                ftpClient.connect(hostname);
            }
            // check reply code
            int code = ftpClient.getReplyCode();
            if (!FTPReply.isPositiveCompletion(code)) {
                ftpClient.disconnect();
                logger.error("Login FTP Server is failure!");
                return false;
            }

            if(ftpClient.login(username, password)){
                // setting
                this.ftpClient.enterLocalPassiveMode();
                this.ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
                this.ftpClient.setBufferSize(BUFFER_SIZE);
                this.ftpClient.setDataTimeout(TIMEOUT);
//              logger.info(username + " successfully logined to the FTP server.");
                return true;
            }else{
                throw new Exception("Please check your username and password.");
            }
        } catch (Exception e) {
            logger.error(username + " failed to login to the FTP server", e);
        }
        return false;
    }
项目:wso2-commons-vfs    文件:FtpClientFactory.java   
private static void configureClient(FileSystemOptions fileSystemOptions, FTPClient client)
{
    String key = FtpFileSystemConfigBuilder.getInstance().getEntryParser(fileSystemOptions);
    if (key != null)
    {
        FTPClientConfig config = new FTPClientConfig(key);

        String serverLanguageCode =
            FtpFileSystemConfigBuilder.getInstance().getServerLanguageCode(fileSystemOptions);
        if (serverLanguageCode != null)
        {
            config.setServerLanguageCode(serverLanguageCode);
        }
        String defaultDateFormat =
            FtpFileSystemConfigBuilder.getInstance().getDefaultDateFormat(fileSystemOptions);
        if (defaultDateFormat != null)
        {
            config.setDefaultDateFormatStr(defaultDateFormat);
        }
        String recentDateFormat =
            FtpFileSystemConfigBuilder.getInstance().getRecentDateFormat(fileSystemOptions);
        if (recentDateFormat != null)
        {
            config.setRecentDateFormatStr(recentDateFormat);
        }
        String serverTimeZoneId =
            FtpFileSystemConfigBuilder.getInstance().getServerTimeZoneId(fileSystemOptions);
        if (serverTimeZoneId != null)
        {
            config.setServerTimeZoneId(serverTimeZoneId);
        }
        String[] shortMonthNames =
            FtpFileSystemConfigBuilder.getInstance().getShortMonthNames(fileSystemOptions);
        if (shortMonthNames != null)
        {
            StringBuilder shortMonthNamesStr = new StringBuilder(BUFSZ);
            for (int i = 0; i < shortMonthNames.length; i++)
            {
                if (shortMonthNamesStr.length() > 0)
                {
                    shortMonthNamesStr.append("|");
                }
                shortMonthNamesStr.append(shortMonthNames[i]);
            }
            config.setShortMonthNames(shortMonthNamesStr.toString());
        }

        client.configure(config);
    }
}
项目:Camel    文件:FtpConsumerUsingFTPClientConfigTest.java   
private FTPClientConfig createConfig() {
    FTPClientConfig config = new FTPClientConfig(FTPClientConfig.SYST_UNIX);
    config.setServerTimeZoneId("Europe/Paris");
    return config;
}
项目:aos-FileCoreLibrary    文件:ConfigurableFTPFileEntryParserImpl.java   
/**
     * Implementation of the {@link  Configurable  Configurable}
     * interface. Configures this parser by delegating to the
     * underlying Configurable FTPTimestampParser implementation, '
     * passing it the supplied {@link  FTPClientConfig FTPClientConfig}
     * if that is non-null or a default configuration defined by
     * each concrete subclass.
     *
     * @param config the configuration to be used to configure this parser.
     * If it is null, a default configuration defined by
     * each concrete subclass is used instead.
     */
//    @Override
    public void configure(FTPClientConfig config)
    {
        if (this.timestampParser instanceof Configurable) {
            FTPClientConfig defaultCfg = getDefaultConfiguration();
            if (config != null) {
                if (null == config.getDefaultDateFormatStr()) {
                    config.setDefaultDateFormatStr(defaultCfg.getDefaultDateFormatStr());
                }
                if (null == config.getRecentDateFormatStr()) {
                    config.setRecentDateFormatStr(defaultCfg.getRecentDateFormatStr());
                }
                ((Configurable)this.timestampParser).configure(config);
            } else {
                ((Configurable)this.timestampParser).configure(defaultCfg);
            }
        }
    }
项目:aos-FileCoreLibrary    文件:VMSVersioningFTPEntryParser.java   
/**
  * This constructor allows the creation of a VMSVersioningFTPEntryParser
  * object with something other than the default configuration.
  *
  * @param config The {@link FTPClientConfig configuration} object used to
  * configure this parser.
  * @exception IllegalArgumentException
  * Thrown if the regular expression is unparseable.  Should not be seen
  * under normal conditions.  It it is seen, this is a sign that
  * <code>REGEX</code> is  not a valid regular expression.
  * @since 1.4
  */
 public VMSVersioningFTPEntryParser(FTPClientConfig config)
 {
     super();
     configure(config);
     try
     {
         //_preparse_matcher_ = new Perl5Matcher();
         _preparse_pattern_ = Pattern.compile(PRE_PARSE_REGEX);
     }
     catch (PatternSyntaxException pse)
     {
         throw new IllegalArgumentException (
             "Unparseable regex supplied:  " + PRE_PARSE_REGEX);
     }

}
项目:cyberduck    文件:FTPListService.java   
public FTPListService(final FTPSession session, final HostPasswordStore keychain, final LoginCallback prompt,
                      final String system, final TimeZone zone) {
    this.session = session;
    // Directory listing parser depending on response for SYST command
    final CompositeFileEntryParser parser = new FTPParserSelector().getParser(system, zone);
    this.implementations.put(Command.list, new FTPDefaultListService(session, keychain, prompt, parser, Command.list));
    if(PreferencesFactory.get().getBoolean("ftp.command.stat")) {
        if(StringUtils.isNotBlank(system)) {
            if(!system.toUpperCase(Locale.ROOT).contains(FTPClientConfig.SYST_NT)) {
                // Workaround for #5572.
                this.implementations.put(Command.stat, new FTPStatListService(session, parser));
            }
        }
        else {
            this.implementations.put(Command.stat, new FTPStatListService(session, parser));
        }
    }
    if(PreferencesFactory.get().getBoolean("ftp.command.mlsd")) {
        this.implementations.put(Command.mlsd, new FTPMlsdListService(session, keychain, prompt));
    }
    if(PreferencesFactory.get().getBoolean("ftp.command.lista")) {
        this.implementations.put(Command.lista, new FTPDefaultListService(session, keychain, prompt, parser, Command.lista));
    }
}
项目:xdman    文件:ConfigurableFTPFileEntryParserImpl.java   
/**
 * Implementation of the {@link  Configurable  Configurable}
 * interface. Configures this parser by delegating to the
 * underlying Configurable FTPTimestampParser implementation, '
 * passing it the supplied {@link  FTPClientConfig FTPClientConfig}
 * if that is non-null or a default configuration defined by
 * each concrete subclass.
 *
 * @param config the configuration to be used to configure this parser.
 * If it is null, a default configuration defined by
 * each concrete subclass is used instead.
 */
public void configure(FTPClientConfig config)
{
    if (this.timestampParser instanceof Configurable) {
        FTPClientConfig defaultCfg = getDefaultConfiguration();
        if (config != null) {
            if (null == config.getDefaultDateFormatStr()) {
                config.setDefaultDateFormatStr(defaultCfg.getDefaultDateFormatStr());
            }
            if (null == config.getRecentDateFormatStr()) {
                config.setRecentDateFormatStr(defaultCfg.getRecentDateFormatStr());
            }
            ((Configurable)this.timestampParser).configure(config);
        } else {
            ((Configurable)this.timestampParser).configure(defaultCfg);
        }
    }
}
项目:xdman    文件:VMSVersioningFTPEntryParser.java   
/**
  * This constructor allows the creation of a VMSVersioningFTPEntryParser
  * object with something other than the default configuration.
  *
  * @param config The {@link FTPClientConfig configuration} object used to
  * configure this parser.
  * @exception IllegalArgumentException
  * Thrown if the regular expression is unparseable.  Should not be seen
  * under normal conditions.  It it is seen, this is a sign that
  * <code>REGEX</code> is  not a valid regular expression.
  * @since 1.4
  */
 public VMSVersioningFTPEntryParser(FTPClientConfig config)
 {
     super();
     configure(config);
     try
     {
         //_preparse_matcher_ = new Perl5Matcher();
         _preparse_pattern_ = Pattern.compile(PRE_PARSE_REGEX);
     }
     catch (PatternSyntaxException pse)
     {
         throw new IllegalArgumentException (
             "Unparseable regex supplied:  " + PRE_PARSE_REGEX);
     }

}
项目:xdm    文件:ConfigurableFTPFileEntryParserImpl.java   
public void configure(FTPClientConfig config) {
   if(this.timestampParser instanceof Configurable) {
      FTPClientConfig defaultCfg = this.getDefaultConfiguration();
      if(config != null) {
         if(config.getDefaultDateFormatStr() == null) {
            config.setDefaultDateFormatStr(defaultCfg.getDefaultDateFormatStr());
         }

         if(config.getRecentDateFormatStr() == null) {
            config.setRecentDateFormatStr(defaultCfg.getRecentDateFormatStr());
         }

         ((Configurable)this.timestampParser).configure(config);
      } else {
         ((Configurable)this.timestampParser).configure(defaultCfg);
      }
   }

}
项目:Aria    文件:ConfigurableFTPFileEntryParserImpl.java   
/**
 * Implementation of the {@link  Configurable  Configurable}
 * interface. Configures this parser by delegating to the
 * underlying Configurable FTPTimestampParser implementation, '
 * passing it the supplied {@link  FTPClientConfig FTPClientConfig}
 * if that is non-null or a default configuration defined by
 * each concrete subclass.
 *
 * @param config the configuration to be used to configure this parser.
 * If it is null, a default configuration defined by
 * each concrete subclass is used instead.
 */
@Override public void configure(FTPClientConfig config) {
  if (this.timestampParser instanceof Configurable) {
    FTPClientConfig defaultCfg = getDefaultConfiguration();
    if (config != null) {
      if (null == config.getDefaultDateFormatStr()) {
        config.setDefaultDateFormatStr(defaultCfg.getDefaultDateFormatStr());
      }
      if (null == config.getRecentDateFormatStr()) {
        config.setRecentDateFormatStr(defaultCfg.getRecentDateFormatStr());
      }
      ((Configurable) this.timestampParser).configure(config);
    } else {
      ((Configurable) this.timestampParser).configure(defaultCfg);
    }
  }
}
项目:mina-ftpserver    文件:ActiveModeReplyTest.java   
@Override
protected void setUp() throws Exception {
    super.setUp();

    TEST_FILE1.createNewFile();
    assertTrue(TEST_FILE1.exists());

    testData = ("TESTDATA").getBytes("UTF-8");
    TestUtil.writeDataToFile(TEST_FILE, testData);
    assertTrue(TEST_FILE.exists());

    FTPClientConfig config = new FTPClientConfig("UNIX");
    client.configure(config);

    client.login(ADMIN_USERNAME, ADMIN_PASSWORD);
}
项目:garlicts    文件:FTPUpload.java   
/**
 * 配置FTP连接参数
 * 
 * @author wangwei
 */
public FTPClientConfig getFTPClientConfig() throws Exception {

    String systemKey = FTPClientConfig.SYST_UNIX;
    String serverLanguageCode = "zh";
    FTPClientConfig conf = new FTPClientConfig(systemKey);
    conf.setServerLanguageCode(serverLanguageCode);
    conf.setDefaultDateFormatStr("yyyy-MM-dd");

    return conf;
}
项目:aos-FileCoreLibrary    文件:MacOsPeterFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_UNIX,
            DEFAULT_DATE_FORMAT,
            DEFAULT_RECENT_DATE_FORMAT,
            null, null, null);
}
项目:aos-FileCoreLibrary    文件:OS2FTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_OS2,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:aos-FileCoreLibrary    文件:NetwareFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(FTPClientConfig.SYST_NETWARE,
            DEFAULT_DATE_FORMAT, DEFAULT_RECENT_DATE_FORMAT, null, null,
            null);
}
项目:aos-FileCoreLibrary    文件:UnixFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_UNIX,
            DEFAULT_DATE_FORMAT,
            DEFAULT_RECENT_DATE_FORMAT,
            null, null, null);
}
项目:aos-FileCoreLibrary    文件:VMSFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_VMS,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:aos-FileCoreLibrary    文件:OS400FTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_OS400,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:aos-FileCoreLibrary    文件:FTPTimestampParserImpl.java   
/**
     * Implementation of the {@link  Configurable  Configurable}
     * interface. Configures this <code>FTPTimestampParser</code> according
     * to the following logic:
     * <p>
     * Set up the {@link  FTPClientConfig#setDefaultDateFormatStr(String) defaultDateFormat}
     * and optionally the {@link  FTPClientConfig#setRecentDateFormatStr(String) recentDateFormat}
     * to values supplied in the config based on month names configured as follows:
     * </p><p><ul>
     * <li>If a {@link  FTPClientConfig#setShortMonthNames(String) shortMonthString}
     * has been supplied in the <code>config</code>, use that to parse  parse timestamps.</li>
     * <li>Otherwise, if a {@link  FTPClientConfig#setServerLanguageCode(String) serverLanguageCode}
     * has been supplied in the <code>config</code>, use the month names represented
     * by that {@link  FTPClientConfig#lookupDateFormatSymbols(String) language}
     * to parse timestamps.</li>
     * <li>otherwise use default English month names</li>
     * </ul></p><p>
     * Finally if a {@link  org.apache.commons.net.ftp.FTPClientConfig#setServerTimeZoneId(String) serverTimeZoneId}
     * has been supplied via the config, set that into all date formats that have
     * been configured.
     * </p>
     */
//    @Override
    public void configure(FTPClientConfig config) {
        DateFormatSymbols dfs = null;

        String languageCode = config.getServerLanguageCode();
        String shortmonths = config.getShortMonthNames();
        if (shortmonths != null) {
            dfs = FTPClientConfig.getDateFormatSymbols(shortmonths);
        } else if (languageCode != null) {
            dfs = FTPClientConfig.lookupDateFormatSymbols(languageCode);
        } else {
            dfs = FTPClientConfig.lookupDateFormatSymbols("en");
        }


        String recentFormatString = config.getRecentDateFormatStr();
        if (recentFormatString == null) {
            this.recentDateFormat = null;
        } else {
            this.recentDateFormat = new SimpleDateFormat(recentFormatString, dfs);
            this.recentDateFormat.setLenient(false);
        }

        String defaultFormatString = config.getDefaultDateFormatStr();
        if (defaultFormatString == null) {
            throw new IllegalArgumentException("defaultFormatString cannot be null");
        }
        this.defaultDateFormat = new SimpleDateFormat(defaultFormatString, dfs);
        this.defaultDateFormat.setLenient(false);

        setServerTimeZone(config.getServerTimeZoneId());

        this.lenientFutureDates = config.isLenientFutureDates();
    }
项目:aos-FileCoreLibrary    文件:DefaultFTPFileEntryParserFactory.java   
/**
 * Creates an NT FTP parser: if the config exists, and the system key equals
 * {@link FTPClientConfig.SYST_NT} then a plain {@link org.apache.commons.net.ftp.parser.NTFTPEntryParser} is used,
 * otherwise a composite of {@link org.apache.commons.net.ftp.parser.NTFTPEntryParser} and {@link org.apache.commons.net.ftp.parser.UnixFTPEntryParser} is used.
 * @param config the config to use, may be {@code null}
 * @return the parser
 */
private FTPFileEntryParser createNTFTPEntryParser(FTPClientConfig config)
{
    if (config != null && FTPClientConfig.SYST_NT.equals(
            config.getServerSystemKey()))
    {
        return new NTFTPEntryParser(config);
    } else {
        return new CompositeFileEntryParser(new FTPFileEntryParser[]
               {
                   new NTFTPEntryParser(config),
                   new UnixFTPEntryParser(config)
               });
    }
}
项目:aos-FileCoreLibrary    文件:DefaultFTPFileEntryParserFactory.java   
/**
 * Creates an OS400 FTP parser: if the config exists, and the system key equals
 * {@link FTPClientConfig.SYST_OS400} then a plain {@link org.apache.commons.net.ftp.parser.OS400FTPEntryParser} is used,
 * otherwise a composite of {@link org.apache.commons.net.ftp.parser.OS400FTPEntryParser} and {@link org.apache.commons.net.ftp.parser.UnixFTPEntryParser} is used.
 * @param config the config to use, may be {@code null}
 * @return the parser
 */
private FTPFileEntryParser createOS400FTPEntryParser(FTPClientConfig config)
    {
    if (config != null &&
            FTPClientConfig.SYST_OS400.equals(config.getServerSystemKey()))
    {
        return new OS400FTPEntryParser(config);
    } else {
        return new CompositeFileEntryParser(new FTPFileEntryParser[]
            {
                new OS400FTPEntryParser(config),
                new UnixFTPEntryParser(config)
            });
    }
}
项目:aos-FileCoreLibrary    文件:NTFTPEntryParser.java   
/**
 * This constructor allows the creation of an NTFTPEntryParser object
 * with something other than the default configuration.
 *
 * @param config The {@link FTPClientConfig configuration} object used to
 * configure this parser.
 * @exception IllegalArgumentException
 * Thrown if the regular expression is unparseable.  Should not be seen
 * under normal conditions.  It it is seen, this is a sign that
 * <code>REGEX</code> is  not a valid regular expression.
 * @since 1.4
 */
 public NTFTPEntryParser(FTPClientConfig config)
{
    super(REGEX);
    configure(config);
    FTPClientConfig config2 = new FTPClientConfig(
            FTPClientConfig.SYST_NT,
            DEFAULT_DATE_FORMAT2,
            null, null, null, null);
    config2.setDefaultDateFormatStr(DEFAULT_DATE_FORMAT2);
    this.timestampParser = new FTPTimestampParserImpl();
    ((Configurable)this.timestampParser).configure(config2);
}
项目:aos-FileCoreLibrary    文件:NTFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
public FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_NT,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:cyberduck    文件:CompositeFileEntryParser.java   
@Override
public void configure(final FTPClientConfig config) {
    for(FTPFileEntryParser parser : parsers) {
        if(parser instanceof Configurable) {
            ((Configurable) parser).configure(config);
        }
    }
}
项目:cyberduck    文件:CommonUnixFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 *
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    final FTPClientConfig config = new FTPClientConfig(
            FTPClientConfig.SYST_UNIX,
            FTPTimestampParser.DEFAULT_SDF,
            FTPTimestampParser.DEFAULT_RECENT_SDF,
            null, null, null);
    config.setLenientFutureDates(true);
    return config;
}
项目:cyberduck    文件:FTPParserFactory.java   
public CompositeFileEntryParser createFileEntryParser(final String system, final TimeZone timezone) throws ParserInitializationException {
    if(null != system) {
        String ukey = system.toUpperCase(Locale.ROOT);
        if(ukey.contains(FTPClientConfig.SYST_UNIX)) {
            return this.createUnixFTPEntryParser(timezone);
        }
        else if(ukey.contains(FTPClientConfig.SYST_VMS)) {
            throw new ParserInitializationException(String.format("\"%s\" is not currently a supported system.", system));
        }
        else if(ukey.contains(FTPClientConfig.SYST_NETWARE)) {
            return this.createNetwareFTPEntryParser(timezone);
        }
        else if(ukey.contains(FTPClientConfig.SYST_NT)) {
            return this.createNTFTPEntryParser(timezone);
        }
        else if(ukey.contains(FTPClientConfig.SYST_OS2)) {
            return this.createOS2FTPEntryParser(timezone);
        }
        else if(ukey.contains(FTPClientConfig.SYST_OS400)) {
            return this.createOS400FTPEntryParser(timezone);
        }
        else if(ukey.contains(FTPClientConfig.SYST_MVS)) {
            return this.createUnixFTPEntryParser(timezone);
        }
    }
    // Defaulting to UNIX parser
    return this.createUnixFTPEntryParser(timezone);
}
项目:cyberduck    文件:FTPParserFactory.java   
private CompositeFileEntryParser createNetwareFTPEntryParser(final TimeZone timezone) {
    return new CompositeFileEntryParser(Arrays.asList(
            new NetwareFTPEntryParser() {
                @Override
                protected FTPClientConfig getDefaultConfiguration() {
                    final FTPClientConfig config = super.getDefaultConfiguration();
                    config.setServerTimeZoneId(timezone.getID());
                    return config;
                }
            },
            this.createUnixFTPEntryParser(timezone)
    ));
}
项目:cyberduck    文件:FTPParserFactory.java   
private CompositeFileEntryParser createNTFTPEntryParser(final TimeZone timezone) {
    return new CompositeFileEntryParser(Arrays.asList(
            new NTFTPEntryParser() {
                @Override
                public FTPClientConfig getDefaultConfiguration() {
                    final FTPClientConfig config = super.getDefaultConfiguration();
                    config.setServerTimeZoneId(timezone.getID());
                    return config;
                }
            },
            this.createUnixFTPEntryParser(timezone)
    ));
}
项目:cyberduck    文件:FTPParserFactory.java   
private CompositeFileEntryParser createOS2FTPEntryParser(final TimeZone timezone) {
    return new CompositeFileEntryParser(Arrays.asList(
            new OS2FTPEntryParser() {
                @Override
                protected FTPClientConfig getDefaultConfiguration() {
                    final FTPClientConfig config = super.getDefaultConfiguration();
                    config.setServerTimeZoneId(timezone.getID());
                    return config;
                }
            }
    ));
}
项目:cyberduck    文件:FTPParserFactory.java   
private CompositeFileEntryParser createOS400FTPEntryParser(final TimeZone timezone) {
    return new CompositeFileEntryParser(Arrays.asList(
            new OS400FTPEntryParser() {
                @Override
                protected FTPClientConfig getDefaultConfiguration() {
                    final FTPClientConfig config = super.getDefaultConfiguration();
                    config.setServerTimeZoneId(timezone.getID());
                    return config;
                }
            },
            this.createUnixFTPEntryParser(timezone)
    ));
}
项目:cyberduck    文件:FTPParserFactory.java   
private CompositeFileEntryParser createMVSEntryParser(final TimeZone timezone) {
    return new CompositeFileEntryParser(Arrays.asList(
            new MVSFTPEntryParser() {
                @Override
                protected FTPClientConfig getDefaultConfiguration() {
                    final FTPClientConfig config = super.getDefaultConfiguration();
                    config.setServerTimeZoneId(timezone.getID());
                    return config;
                }
            }
    ));
}
项目:xdman    文件:MacOsPeterFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_UNIX,
            DEFAULT_DATE_FORMAT,
            DEFAULT_RECENT_DATE_FORMAT,
            null, null, null);
}
项目:xdman    文件:OS2FTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_OS2,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:xdman    文件:NetwareFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(FTPClientConfig.SYST_NETWARE,
            DEFAULT_DATE_FORMAT, DEFAULT_RECENT_DATE_FORMAT, null, null,
            null);
}
项目:xdman    文件:UnixFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_UNIX,
            DEFAULT_DATE_FORMAT,
            DEFAULT_RECENT_DATE_FORMAT,
            null, null, null);
}
项目:xdman    文件:VMSFTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_VMS,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:xdman    文件:OS400FTPEntryParser.java   
/**
 * Defines a default configuration to be used when this class is
 * instantiated without a {@link  FTPClientConfig  FTPClientConfig}
 * parameter being specified.
 * @return the default configuration for this parser.
 */
@Override
protected FTPClientConfig getDefaultConfiguration() {
    return new FTPClientConfig(
            FTPClientConfig.SYST_OS400,
            DEFAULT_DATE_FORMAT,
            null, null, null, null);
}
项目:xdman    文件:FTPTimestampParserImpl.java   
/**
 * Implementation of the {@link  Configurable  Configurable}
 * interface. Configures this <code>FTPTimestampParser</code> according
 * to the following logic:
 * <p>
 * Set up the {@link  FTPClientConfig#setDefaultDateFormatStr(java.lang.String) defaultDateFormat}
 * and optionally the {@link  FTPClientConfig#setRecentDateFormatStr(String) recentDateFormat}
 * to values supplied in the config based on month names configured as follows:
 * </p><p><ul>
 * <li>If a {@link  FTPClientConfig#setShortMonthNames(String) shortMonthString}
 * has been supplied in the <code>config</code>, use that to parse  parse timestamps.</li>
 * <li>Otherwise, if a {@link  FTPClientConfig#setServerLanguageCode(String) serverLanguageCode}
 * has been supplied in the <code>config</code>, use the month names represented
 * by that {@link  FTPClientConfig#lookupDateFormatSymbols(String) language}
 * to parse timestamps.</li>
 * <li>otherwise use default English month names</li>
 * </ul></p><p>
 * Finally if a {@link  org.apache.commons.net.ftp.FTPClientConfig#setServerTimeZoneId(String) serverTimeZoneId}
 * has been supplied via the config, set that into all date formats that have
 * been configured.
 * </p>
 */
public void configure(FTPClientConfig config) {
    DateFormatSymbols dfs = null;

    String languageCode = config.getServerLanguageCode();
    String shortmonths = config.getShortMonthNames();
    if (shortmonths != null) {
        dfs = FTPClientConfig.getDateFormatSymbols(shortmonths);
    } else if (languageCode != null) {
        dfs = FTPClientConfig.lookupDateFormatSymbols(languageCode);
    } else {
        dfs = FTPClientConfig.lookupDateFormatSymbols("en");
    }


    String recentFormatString = config.getRecentDateFormatStr();
    if (recentFormatString == null) {
        this.recentDateFormat = null;
    } else {
        this.recentDateFormat = new SimpleDateFormat(recentFormatString, dfs);
        this.recentDateFormat.setLenient(false);
    }

    String defaultFormatString = config.getDefaultDateFormatStr();
    if (defaultFormatString == null) {
        throw new IllegalArgumentException("defaultFormatString cannot be null");
    }
    this.defaultDateFormat = new SimpleDateFormat(defaultFormatString, dfs);
    this.defaultDateFormat.setLenient(false);

    setServerTimeZone(config.getServerTimeZoneId());

    this.lenientFutureDates = config.isLenientFutureDates();
}