You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by ng...@apache.org on 2008/10/13 23:24:28 UTC
svn commit: r704254 - in /mina/ftpserver/trunk/core/src:
main/java/org/apache/ftpserver/ main/java/org/apache/ftpserver/config/spring/
main/java/org/apache/ftpserver/impl/ main/java/org/apache/ftpserver/listener/
main/java/org/apache/ftpserver/listener...
Author: ngn
Date: Mon Oct 13 14:24:27 2008
New Revision: 704254
URL: http://svn.apache.org/viewvc?rev=704254&view=rev
Log:
Make ConnectionConfig and DataConnectionConfig immutable (FTPSERVER-187). These are the last ones!
Added:
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/ConnectionConfigFactory.java (with props)
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfigurationFactory.java (with props)
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultConnectionConfig.java
- copied, changed from r701859, mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultConnectionConfig.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java (contents, props changed)
- copied, changed from r701863, mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultDataConnectionConfiguration.java
Removed:
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultConnectionConfig.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultDataConnectionConfiguration.java
Modified:
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfiguration.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ListenerBeanDefinitionParser.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ServerBeanDefinitionParser.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/ListenerFactory.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/nio/AbstractListener.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/CommandLine.java
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/Daemon.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/CustomMaxLoginTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/LoginNoAnonTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressWithHostnameTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/UnlimitedMaxLoginTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/config/spring/DbUserManagerConfigTest.java
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/ssl/SSLTestTemplate.java
Added: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/ConnectionConfigFactory.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/ConnectionConfigFactory.java?rev=704254&view=auto
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/ConnectionConfigFactory.java (added)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/ConnectionConfigFactory.java Mon Oct 13 14:24:27 2008
@@ -0,0 +1,89 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ftpserver;
+
+import org.apache.ftpserver.impl.DefaultConnectionConfig;
+
+/**
+ * Factory for creating connection configurations
+ *
+ * @author The Apache MINA Project (dev@mina.apache.org)
+ * @version $Rev$, $Date$
+ *
+ */
+public class ConnectionConfigFactory implements ConnectionConfig {
+
+ private int maxLogins = 10;
+
+ private boolean anonymousLoginEnabled = true;
+
+ private int maxAnonymousLogins = 10;
+
+ private int maxLoginFailures = 3;
+
+ private int loginFailureDelay = 500;
+
+ public ConnectionConfig createConnectionConfig() {
+ return new DefaultConnectionConfig(anonymousLoginEnabled,
+ loginFailureDelay, maxLogins, maxAnonymousLogins,
+ maxLoginFailures);
+ }
+
+ public int getLoginFailureDelay() {
+ return loginFailureDelay;
+ }
+
+ public int getMaxAnonymousLogins() {
+ return maxAnonymousLogins;
+ }
+
+ public int getMaxLoginFailures() {
+ return maxLoginFailures;
+ }
+
+ public int getMaxLogins() {
+ return maxLogins;
+ }
+
+ public boolean isAnonymousLoginEnabled() {
+ return anonymousLoginEnabled;
+ }
+
+ public void setMaxLogins(final int maxLogins) {
+ this.maxLogins = maxLogins;
+ }
+
+ public void setAnonymousLoginEnabled(final boolean anonymousLoginEnabled) {
+ this.anonymousLoginEnabled = anonymousLoginEnabled;
+ }
+
+ public void setMaxAnonymousLogins(final int maxAnonymousLogins) {
+ this.maxAnonymousLogins = maxAnonymousLogins;
+ }
+
+ public void setMaxLoginFailures(final int maxLoginFailures) {
+ this.maxLoginFailures = maxLoginFailures;
+ }
+
+ public void setLoginFailureDelay(final int loginFailureDelay) {
+ this.loginFailureDelay = loginFailureDelay;
+ }
+
+}
Propchange: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/ConnectionConfigFactory.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfiguration.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfiguration.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfiguration.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfiguration.java Mon Oct 13 14:24:27 2008
@@ -88,17 +88,6 @@
String getPassivePorts();
/**
- * Set the allowed passive ports.
- *
- * @see DataConnectionConfiguration#getPassivePorts() for details on the
- * allowed format. If set to null, the passive port with be assigned
- * from any available port
- * @param passivePorts
- * The passive ports to use for this data connection
- */
- void setPassivePorts(String passivePorts);
-
- /**
* Request a passive port
*/
int requestPassivePort();
Added: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfigurationFactory.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfigurationFactory.java?rev=704254&view=auto
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfigurationFactory.java (added)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfigurationFactory.java Mon Oct 13 14:24:27 2008
@@ -0,0 +1,203 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ftpserver;
+
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+
+import org.apache.ftpserver.impl.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.impl.PassivePorts;
+import org.apache.ftpserver.ssl.SslConfiguration;
+
+/**
+ * Data connection factory
+ *
+ * @author The Apache MINA Project (dev@mina.apache.org)
+ * @version $Rev: 701863 $, $Date: 2008-10-05 21:25:50 +0200 (Sun, 05 Oct 2008) $
+ */
+public class DataConnectionConfigurationFactory {
+
+ public void setIdleTime(int idleTime) {
+ this.idleTime = idleTime;
+ }
+
+ public void setActiveEnabled(boolean activeEnabled) {
+ this.activeEnabled = activeEnabled;
+ }
+
+ public void setActiveLocalAddress(InetAddress activeLocalAddress) {
+ this.activeLocalAddress = activeLocalAddress;
+ }
+
+ public void setActiveLocalPort(int activeLocalPort) {
+ this.activeLocalPort = activeLocalPort;
+ }
+
+ public void setActiveIpCheck(boolean activeIpCheck) {
+ this.activeIpCheck = activeIpCheck;
+ }
+
+ public void setPassiveAddress(InetAddress passiveAddress) {
+ this.passiveAddress = passiveAddress;
+ }
+
+ // maximum idle time in seconds
+ private int idleTime = 300;
+ private SslConfiguration ssl;
+
+ private boolean activeEnabled = true;
+ private InetAddress activeLocalAddress;
+ private int activeLocalPort = 0;
+ private boolean activeIpCheck = false;
+
+ private InetAddress passiveAddress;
+ private InetAddress passiveExternalAddress;
+ private PassivePorts passivePorts = new PassivePorts(new int[] { 0 });
+
+ public DataConnectionConfigurationFactory() {
+ try {
+ activeLocalAddress = InetAddress.getLocalHost();
+ } catch (UnknownHostException e) {
+ throw new FtpServerConfigurationException(
+ "Failed to resolve localhost", e);
+ }
+ }
+
+ public DataConnectionConfiguration createDataConnectionConfiguration() {
+ return new DefaultDataConnectionConfiguration(idleTime,
+ ssl, activeEnabled, activeIpCheck,
+ activeLocalAddress, activeLocalPort,
+ passiveAddress, passivePorts,
+ passiveExternalAddress);
+ }
+
+ /**
+ * Get the maximum idle time in seconds.
+ */
+ public int getIdleTime() {
+ return idleTime;
+ }
+
+ /**
+ * Is PORT enabled?
+ */
+ public boolean isActiveEnabled() {
+ return activeEnabled;
+ }
+
+ /**
+ * Check the PORT IP?
+ */
+ public boolean isActiveIpCheck() {
+ return activeIpCheck;
+ }
+
+ /**
+ * Get the local address for active mode data transfer.
+ */
+ public InetAddress getActiveLocalAddress() {
+ return activeLocalAddress;
+ }
+
+ /**
+ * Get the active local port number.
+ */
+ public int getActiveLocalPort() {
+ return activeLocalPort;
+ }
+
+ /**
+ * Get passive host.
+ */
+ public InetAddress getPassiveAddress() {
+ return passiveAddress;
+ }
+
+ /**
+ * Get external passive host.
+ */
+ public InetAddress getPassiveExernalAddress() {
+ return passiveExternalAddress;
+ }
+
+ public void setPassiveExernalAddress(InetAddress passiveExternalAddress) {
+ this.passiveExternalAddress = passiveExternalAddress;
+ }
+
+ /**
+ * Get passive data port. Data port number zero (0) means that any available
+ * port will be used.
+ */
+ public synchronized int requestPassivePort() {
+ int dataPort = -1;
+ int loopTimes = 2;
+ Thread currThread = Thread.currentThread();
+
+ while ((dataPort == -1) && (--loopTimes >= 0)
+ && (!currThread.isInterrupted())) {
+
+ // search for a free port
+ dataPort = passivePorts.reserveNextPort();
+
+ // no available free port - wait for the release notification
+ if (dataPort == -1) {
+ try {
+ wait();
+ } catch (InterruptedException ex) {
+ }
+ }
+ }
+ return dataPort;
+ }
+
+ /**
+ * Retrive the passive ports configured for this data connection
+ *
+ * @return The String of passive ports
+ */
+ public String getPassivePorts() {
+ return passivePorts.toString();
+ }
+
+ public void setPassivePorts(String passivePorts) {
+ this.passivePorts = new PassivePorts(passivePorts);
+ }
+
+
+ /**
+ * Release data port
+ */
+ public synchronized void releasePassivePort(final int port) {
+ passivePorts.releasePort(port);
+
+ notify();
+ }
+
+ /**
+ * Get SSL component.
+ */
+ public SslConfiguration getSslConfiguration() {
+ return ssl;
+ }
+
+ public void setSslConfiguration(SslConfiguration ssl) {
+ this.ssl = ssl;
+ }
+}
Propchange: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DataConnectionConfigurationFactory.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ListenerBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ListenerBeanDefinitionParser.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ListenerBeanDefinitionParser.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ListenerBeanDefinitionParser.java Mon Oct 13 14:24:27 2008
@@ -25,9 +25,7 @@
import java.util.List;
import org.apache.ftpserver.DataConnectionConfiguration;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration.Active;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration.Passive;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
import org.apache.ftpserver.listener.ListenerFactory;
import org.apache.ftpserver.ssl.SslConfiguration;
import org.apache.ftpserver.ssl.SslConfigurationFactory;
@@ -250,7 +248,7 @@
private DataConnectionConfiguration parseDataConnection(
final Element element,
final SslConfiguration listenerSslConfiguration) {
- DefaultDataConnectionConfiguration dc = new DefaultDataConnectionConfiguration();
+ DataConnectionConfigurationFactory dc = new DataConnectionConfigurationFactory();
if (element != null) {
// data con config element available
@@ -271,45 +269,39 @@
Element activeElm = SpringUtil.getChildElement(element,
FtpServerNamespaceHandler.FTPSERVER_NS, "active");
if (activeElm != null) {
- Active active = new Active();
- active.setEnable(SpringUtil.parseBoolean(activeElm, "enabled",
+ dc.setActiveEnabled(SpringUtil.parseBoolean(activeElm, "enabled",
true));
- active.setIpCheck(SpringUtil.parseBoolean(activeElm,
+ dc.setActiveIpCheck(SpringUtil.parseBoolean(activeElm,
"ip-check", false));
- active.setLocalPort(SpringUtil.parseInt(activeElm,
+ dc.setActiveLocalPort(SpringUtil.parseInt(activeElm,
"local-port", 0));
InetAddress localAddress = SpringUtil.parseInetAddress(
activeElm, "local-address");
if (localAddress != null) {
- active.setLocalAddress(localAddress);
+ dc.setActiveLocalAddress(localAddress);
}
-
- dc.setActive(active);
}
Element passiveElm = SpringUtil.getChildElement(element,
FtpServerNamespaceHandler.FTPSERVER_NS, "passive");
if (passiveElm != null) {
- Passive passive = new Passive();
-
InetAddress address = SpringUtil.parseInetAddress(passiveElm,
"address");
if (address != null) {
- passive.setAddress(address);
+ dc.setPassiveAddress(address);
}
InetAddress externalAddress = SpringUtil.parseInetAddress(
passiveElm, "external-address");
if (externalAddress != null) {
- passive.setExternalAddress(externalAddress);
+ dc.setPassiveExernalAddress(externalAddress);
}
String ports = SpringUtil.parseString(passiveElm, "ports");
if (ports != null) {
- passive.setPorts(ports);
+ dc.setPassivePorts(ports);
}
- dc.setPassive(passive);
}
} else {
// no data conn config element, do we still have SSL config from the
@@ -322,7 +314,7 @@
}
- return dc;
+ return dc.createDataConnectionConfiguration();
}
}
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ServerBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ServerBeanDefinitionParser.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ServerBeanDefinitionParser.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/config/spring/ServerBeanDefinitionParser.java Mon Oct 13 14:24:27 2008
@@ -23,10 +23,11 @@
import java.util.List;
import java.util.Map;
-import org.apache.ftpserver.DefaultConnectionConfig;
+import org.apache.ftpserver.ConnectionConfigFactory;
import org.apache.ftpserver.FtpServer;
import org.apache.ftpserver.FtpServerConfigurationException;
import org.apache.ftpserver.FtpServerFactory;
+import org.apache.ftpserver.impl.DefaultConnectionConfig;
import org.apache.ftpserver.impl.DefaultFtpServer;
import org.apache.ftpserver.listener.ListenerFactory;
import org.apache.ftpserver.message.MessageResource;
@@ -115,7 +116,7 @@
}
// Configure login limits
- DefaultConnectionConfig connectionConfig = new DefaultConnectionConfig();
+ ConnectionConfigFactory connectionConfig = new ConnectionConfigFactory();
if (StringUtils.hasText(element.getAttribute("max-logins"))) {
connectionConfig.setMaxLogins(SpringUtil.parseInt(element,
"max-logins"));
@@ -137,7 +138,7 @@
"login-failure-delay"));
}
- factoryBuilder.addPropertyValue("connectionConfig", connectionConfig);
+ factoryBuilder.addPropertyValue("connectionConfig", connectionConfig.createConnectionConfig());
BeanDefinition factoryDefinition = factoryBuilder.getBeanDefinition();
Copied: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultConnectionConfig.java (from r701859, mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultConnectionConfig.java)
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultConnectionConfig.java?p2=mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultConnectionConfig.java&p1=mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultConnectionConfig.java&r1=701859&r2=704254&rev=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultConnectionConfig.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultConnectionConfig.java Mon Oct 13 14:24:27 2008
@@ -17,7 +17,10 @@
* under the License.
*/
-package org.apache.ftpserver;
+package org.apache.ftpserver.impl;
+
+import org.apache.ftpserver.ConnectionConfig;
+import org.apache.ftpserver.ConnectionConfigFactory;
/**
*
@@ -38,6 +41,19 @@
private int loginFailureDelay = 500;
+ /**
+ * Internal constructor, do not use directly. Use {@link ConnectionConfigFactory} instead
+ */
+ public DefaultConnectionConfig(boolean anonymousLoginEnabled,
+ int loginFailureDelay, int maxLogins, int maxAnonymousLogins,
+ int maxLoginFailures) {
+ this.anonymousLoginEnabled = anonymousLoginEnabled;
+ this.loginFailureDelay = loginFailureDelay;
+ this.maxLogins = maxLogins;
+ this.maxAnonymousLogins = maxAnonymousLogins;
+ this.maxLoginFailures = maxLoginFailures;
+ }
+
public int getLoginFailureDelay() {
return loginFailureDelay;
}
@@ -58,24 +74,4 @@
return anonymousLoginEnabled;
}
- public void setMaxLogins(final int maxLogins) {
- this.maxLogins = maxLogins;
- }
-
- public void setAnonymousLoginEnabled(final boolean anonymousLoginEnabled) {
- this.anonymousLoginEnabled = anonymousLoginEnabled;
- }
-
- public void setMaxAnonymousLogins(final int maxAnonymousLogins) {
- this.maxAnonymousLogins = maxAnonymousLogins;
- }
-
- public void setMaxLoginFailures(final int maxLoginFailures) {
- this.maxLoginFailures = maxLoginFailures;
- }
-
- public void setLoginFailureDelay(final int loginFailureDelay) {
- this.loginFailureDelay = loginFailureDelay;
- }
-
}
Copied: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java (from r701863, mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultDataConnectionConfiguration.java)
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java?p2=mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java&p1=mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultDataConnectionConfiguration.java&r1=701863&r2=704254&rev=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/DefaultDataConnectionConfiguration.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java Mon Oct 13 14:24:27 2008
@@ -17,12 +17,12 @@
* under the License.
*/
-package org.apache.ftpserver;
+package org.apache.ftpserver.impl;
import java.net.InetAddress;
-import java.net.UnknownHostException;
-import org.apache.ftpserver.impl.PassivePorts;
+import org.apache.ftpserver.DataConnectionConfiguration;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
import org.apache.ftpserver.ssl.SslConfiguration;
/**
@@ -34,94 +34,38 @@
public class DefaultDataConnectionConfiguration implements
DataConnectionConfiguration {
- public static class Active {
- private boolean enable = true;
-
- private InetAddress localAddress;
-
- private int localPort = 0;
-
- private boolean ipCheck = false;
-
- public Active() {
- try {
- localAddress = InetAddress.getLocalHost();
- } catch (UnknownHostException e) {
- throw new FtpServerConfigurationException(
- "Failed to resolve localhost", e);
- }
- }
-
- public boolean isEnable() {
- return enable;
- }
-
- public void setEnable(boolean enable) {
- this.enable = enable;
- }
-
- public boolean isIpCheck() {
- return ipCheck;
- }
-
- public void setIpCheck(boolean ipCheck) {
- this.ipCheck = ipCheck;
- }
-
- public InetAddress getLocalAddress() {
- return localAddress;
- }
-
- public void setLocalAddress(InetAddress localAddress) {
- this.localAddress = localAddress;
- }
-
- public int getLocalPort() {
- return localPort;
- }
-
- public void setLocalPort(int localPort) {
- this.localPort = localPort;
- }
- }
-
- public static class Passive {
- private InetAddress address;
-
- private InetAddress externalAddress;
-
- private PassivePorts passivePorts = new PassivePorts(new int[] { 0 });
-
- public InetAddress getAddress() {
- return address;
- }
-
- public void setAddress(InetAddress address) {
- this.address = address;
- }
-
- public PassivePorts getPassivePorts() {
- return passivePorts;
- }
-
- public void setPorts(String ports) {
- this.passivePorts = new PassivePorts(ports);
- }
-
- public InetAddress getExternalAddress() {
- return externalAddress;
- }
-
- public void setExternalAddress(InetAddress externalAddress) {
- this.externalAddress = externalAddress;
- }
- }
-
// maximum idle time in seconds
- private int idleTime = 300;
-
+ private int idleTime;
private SslConfiguration ssl;
+ private boolean activeEnabled;
+ private InetAddress activeLocalAddress;
+ private int activeLocalPort;
+ private boolean activeIpCheck;
+
+ private InetAddress passiveAddress;
+ private InetAddress passiveExternalAddress;
+ private PassivePorts passivePorts;
+
+ /**
+ * Internal constructor, do not use directly. Use {@link DataConnectionConfigurationFactory} instead.
+ */
+ public DefaultDataConnectionConfiguration(int idleTime,
+ SslConfiguration ssl, boolean activeEnabled, boolean activeIpCheck,
+ InetAddress activeLocalAddress, int activeLocalPort,
+ InetAddress passiveAddress, PassivePorts passivePorts,
+ InetAddress passiveExternalAddress) {
+ this.idleTime = idleTime;
+ this.ssl = ssl;
+ this.activeEnabled = activeEnabled;
+ this.activeIpCheck = activeIpCheck;
+ this.activeLocalAddress = activeLocalAddress;
+ this.activeLocalPort = activeLocalPort;
+ this.passiveAddress = passiveAddress;
+ this.passivePorts = passivePorts;
+ this.passiveExternalAddress = passiveExternalAddress;
+ }
+
/**
* Get the maximum idle time in seconds.
*/
@@ -129,86 +73,46 @@
return idleTime;
}
- public void setIdleTime(final int idleTime) {
- this.idleTime = idleTime;
- }
-
- private Active active = new Active();
-
- private Passive passive = new Passive();
-
- public void setActive(final Active active) {
- this.active = active;
- }
-
- public void setPassive(final Passive passive) {
- this.passive = passive;
- }
-
- public void setSslConfiguration(final SslConfiguration ssl) {
- this.ssl = ssl;
- }
-
/**
* Is PORT enabled?
*/
public boolean isActiveEnabled() {
- return active.isEnable();
+ return activeEnabled;
}
/**
* Check the PORT IP?
*/
public boolean isActiveIpCheck() {
- return active.isIpCheck();
+ return activeIpCheck;
}
/**
* Get the local address for active mode data transfer.
*/
public InetAddress getActiveLocalAddress() {
- return active.getLocalAddress();
+ return activeLocalAddress;
}
/**
* Get the active local port number.
*/
public int getActiveLocalPort() {
- return active.getLocalPort();
+ return activeLocalPort;
}
/**
* Get passive host.
*/
public InetAddress getPassiveAddress() {
- return passive.getAddress();
- }
-
- /**
- * Set the passive host
- *
- * @param address
- * The passive host
- */
- public void setPassiveAddress(final InetAddress address) {
- passive.setAddress(address);
+ return passiveAddress;
}
/**
* Get external passive host.
*/
public InetAddress getPassiveExernalAddress() {
- return passive.getExternalAddress();
- }
-
- /**
- * Set the passive external host
- *
- * @param address
- * The passive external host
- */
- public void setPassiveExernalAddress(final InetAddress address) {
- passive.setExternalAddress(address);
+ return passiveExternalAddress;
}
/**
@@ -224,7 +128,7 @@
&& (!currThread.isInterrupted())) {
// search for a free port
- dataPort = passive.getPassivePorts().reserveNextPort();
+ dataPort = passivePorts.reserveNextPort();
// no available free port - wait for the release notification
if (dataPort == -1) {
@@ -243,31 +147,14 @@
* @return The String of passive ports
*/
public String getPassivePorts() {
- return passive.passivePorts.toString();
- }
-
- /**
- * Set the passive ports allowed for this data connection.
- *
- * @param passivePorts
- * A string consisting of port numbers separated by commas. It
- * can also include ranged. For example:
- * <p>
- * 22,23,24
- * </p>
- * <p>
- * 22-24,28
- * </p>
- */
- public void setPassivePorts(final String passivePorts) {
- passive.passivePorts = new PassivePorts(passivePorts);
+ return passivePorts.toString();
}
/**
* Release data port
*/
public synchronized void releasePassivePort(final int port) {
- passive.getPassivePorts().releasePort(port);
+ passivePorts.releasePort(port);
notify();
}
Propchange: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultDataConnectionConfiguration.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/impl/DefaultFtpServerContext.java Mon Oct 13 14:24:27 2008
@@ -26,7 +26,7 @@
import java.util.Map;
import org.apache.ftpserver.ConnectionConfig;
-import org.apache.ftpserver.DefaultConnectionConfig;
+import org.apache.ftpserver.ConnectionConfigFactory;
import org.apache.ftpserver.command.CommandFactory;
import org.apache.ftpserver.command.CommandFactoryFactory;
import org.apache.ftpserver.filesystem.nativefs.NativeFileSystemFactory;
@@ -72,7 +72,7 @@
private CommandFactory commandFactory = new CommandFactoryFactory().createCommandFactory();
- private ConnectionConfig connectionConfig = new DefaultConnectionConfig();
+ private ConnectionConfig connectionConfig = new ConnectionConfigFactory().createConnectionConfig();
private Map<String, Listener> listeners = new HashMap<String, Listener>();
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/ListenerFactory.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/ListenerFactory.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/ListenerFactory.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/ListenerFactory.java Mon Oct 13 14:24:27 2008
@@ -23,7 +23,8 @@
import java.util.List;
import org.apache.ftpserver.DataConnectionConfiguration;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
+import org.apache.ftpserver.impl.DefaultDataConnectionConfiguration;
import org.apache.ftpserver.listener.nio.NioListener;
import org.apache.ftpserver.ssl.SslConfiguration;
import org.apache.mina.filter.firewall.Subnet;
@@ -45,10 +46,11 @@
private boolean implicitSsl = false;
- private DataConnectionConfiguration dataConnectionConfig = new DefaultDataConnectionConfiguration();
+ private DataConnectionConfiguration dataConnectionConfig = new DataConnectionConfigurationFactory()
+ .createDataConnectionConfiguration();
private int idleTimeout = 300;
-
+
private List<InetAddress> blockedAddresses;
private List<Subnet> blockedSubnets;
@@ -75,14 +77,14 @@
blockedSubnets = listener.getBlockedSubnets();
}
-
/**
* Create a listener based on the settings of this factory. The listener is immutable.
* @return The created listener
*/
public Listener createListener() {
return new NioListener(serverAddress, port, implicitSsl, ssl,
- dataConnectionConfig, idleTimeout, blockedAddresses, blockedSubnets);
+ dataConnectionConfig, idleTimeout, blockedAddresses,
+ blockedSubnets);
}
/**
@@ -222,8 +224,7 @@
* @param blockedAddresses
* The list of {@link InetAddress}es
*/
- public void setBlockedAddresses(
- List<InetAddress> blockedAddresses) {
+ public void setBlockedAddresses(List<InetAddress> blockedAddresses) {
this.blockedAddresses = blockedAddresses;
}
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/nio/AbstractListener.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/nio/AbstractListener.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/nio/AbstractListener.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/listener/nio/AbstractListener.java Mon Oct 13 14:24:27 2008
@@ -24,7 +24,7 @@
import java.util.List;
import org.apache.ftpserver.DataConnectionConfiguration;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.impl.DefaultDataConnectionConfiguration;
import org.apache.ftpserver.listener.Listener;
import org.apache.ftpserver.listener.ListenerFactory;
import org.apache.ftpserver.ssl.SslConfiguration;
@@ -52,7 +52,7 @@
private List<Subnet> blockedSubnets;
- private DataConnectionConfiguration dataConnectionConfig = new DefaultDataConnectionConfiguration();
+ private DataConnectionConfiguration dataConnectionConfig;
/**
* Constructor for internal use, do not use directly. Instead use {@link ListenerFactory}
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/CommandLine.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/CommandLine.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/CommandLine.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/CommandLine.java Mon Oct 13 14:24:27 2008
@@ -134,16 +134,16 @@
args[0]);
if (ctx.containsBean("server")) {
- server = (DefaultFtpServer) ctx.getBean("server");
+ server = (FtpServer) ctx.getBean("server");
} else {
- String[] beanNames = ctx.getBeanNamesForType(DefaultFtpServer.class);
+ String[] beanNames = ctx.getBeanNamesForType(FtpServer.class);
if (beanNames.length == 1) {
- server = (DefaultFtpServer) ctx.getBean(beanNames[0]);
+ server = (FtpServer) ctx.getBean(beanNames[0]);
} else if (beanNames.length > 1) {
System.out
.println("Using the first server defined in the configuration, named "
+ beanNames[0]);
- server = (DefaultFtpServer) ctx.getBean(beanNames[0]);
+ server = (FtpServer) ctx.getBean(beanNames[0]);
} else {
System.err
.println("XML configuration does not contain a server configuration");
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/Daemon.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/Daemon.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/Daemon.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/main/Daemon.java Mon Oct 13 14:24:27 2008
@@ -111,7 +111,7 @@
System.out
.println("Using the first server defined in the configuration, named "
+ beanNames[0]);
- server = (DefaultFtpServer) ctx.getBean(beanNames[0]);
+ server = (FtpServer) ctx.getBean(beanNames[0]);
} else {
System.err
.println("XML configuration does not contain a server configuration");
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/CustomMaxLoginTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/CustomMaxLoginTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/CustomMaxLoginTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/CustomMaxLoginTest.java Mon Oct 13 14:24:27 2008
@@ -22,10 +22,8 @@
import java.net.SocketException;
import org.apache.commons.net.ftp.FTPConnectionClosedException;
-import org.apache.ftpserver.DefaultConnectionConfig;
+import org.apache.ftpserver.ConnectionConfigFactory;
import org.apache.ftpserver.FtpServerFactory;
-import org.apache.ftpserver.impl.DefaultFtpServerContext;
-import org.apache.ftpserver.impl.DefaultFtpServer;
/**
*
@@ -41,11 +39,12 @@
protected FtpServerFactory createServer() throws Exception {
FtpServerFactory server = super.createServer();
- DefaultConnectionConfig cc = (DefaultConnectionConfig) server
- .getConnectionConfig();
+ ConnectionConfigFactory ccFactory = new ConnectionConfigFactory();
- cc.setMaxLoginFailures(2);
+ ccFactory.setMaxLoginFailures(2);
+ server.setConnectionConfig(ccFactory.createConnectionConfig());
+
return server;
}
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/LoginNoAnonTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/LoginNoAnonTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/LoginNoAnonTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/LoginNoAnonTest.java Mon Oct 13 14:24:27 2008
@@ -19,8 +19,9 @@
package org.apache.ftpserver.clienttests;
-import org.apache.ftpserver.DefaultConnectionConfig;
+import org.apache.ftpserver.ConnectionConfigFactory;
import org.apache.ftpserver.FtpServerFactory;
+import org.apache.ftpserver.impl.DefaultConnectionConfig;
/**
*
@@ -38,9 +39,11 @@
protected FtpServerFactory createServer() throws Exception {
FtpServerFactory server = super.createServer();
- DefaultConnectionConfig cc = (DefaultConnectionConfig) server
- .getConnectionConfig();
- cc.setAnonymousLoginEnabled(false);
+ ConnectionConfigFactory ccFactory = new ConnectionConfigFactory();
+
+ ccFactory.setAnonymousLoginEnabled(false);
+
+ server.setConnectionConfig(ccFactory.createConnectionConfig());
return server;
}
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressTest.java Mon Oct 13 14:24:27 2008
@@ -22,8 +22,9 @@
import java.net.InetAddress;
import java.net.InetSocketAddress;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
import org.apache.ftpserver.FtpServerFactory;
+import org.apache.ftpserver.listener.ListenerFactory;
import org.apache.ftpserver.test.TestUtil;
import org.apache.ftpserver.util.SocketAddressEncoder;
@@ -40,14 +41,18 @@
protected FtpServerFactory createServer() throws Exception {
FtpServerFactory server = super.createServer();
- DefaultDataConnectionConfiguration ddcc = (DefaultDataConnectionConfiguration) server
- .getListener("default")
- .getDataConnectionConfiguration();
-
+ ListenerFactory listenerFactory = new ListenerFactory(server.getListener("default"));
+
+ DataConnectionConfigurationFactory dccFactory = new DataConnectionConfigurationFactory();
+
passiveAddress = TestUtil.findNonLocalhostIp();
- ddcc.setPassiveAddress(passiveAddress);
- ddcc.setPassivePorts("12347");
+ dccFactory.setPassiveAddress(passiveAddress);
+ dccFactory.setPassivePorts("12347");
+
+ listenerFactory.setDataConnectionConfiguration(dccFactory.createDataConnectionConfiguration());
+ server.addListener("default", listenerFactory.createListener());
+
return server;
}
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressWithHostnameTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressWithHostnameTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressWithHostnameTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvAddressWithHostnameTest.java Mon Oct 13 14:24:27 2008
@@ -21,8 +21,10 @@
import java.net.InetAddress;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
import org.apache.ftpserver.FtpServerFactory;
+import org.apache.ftpserver.impl.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.listener.ListenerFactory;
/**
* Test for external passive address configured as hostname rather than IP
@@ -37,9 +39,15 @@
protected FtpServerFactory createServer() throws Exception {
FtpServerFactory server = super.createServer();
- DefaultDataConnectionConfiguration ddcc = (DefaultDataConnectionConfiguration) server
- .getListener("default").getDataConnectionConfiguration();
- ddcc.setPassiveExernalAddress(InetAddress.getByName("127.0.0.1"));
+ ListenerFactory listenerFactory = new ListenerFactory(server.getListener("default"));
+
+ DataConnectionConfigurationFactory dccFactory = new DataConnectionConfigurationFactory();
+
+ dccFactory.setPassiveExernalAddress(InetAddress.getByName("127.0.0.1"));
+
+ listenerFactory.setDataConnectionConfiguration(dccFactory.createDataConnectionConfiguration());
+
+ server.addListener("default", listenerFactory.createListener());
return server;
}
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/PasvTest.java Mon Oct 13 14:24:27 2008
@@ -20,9 +20,9 @@
package org.apache.ftpserver.clienttests;
import org.apache.commons.net.ftp.FTPConnectionClosedException;
-import org.apache.ftpserver.DataConnectionConfiguration;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
import org.apache.ftpserver.FtpServerFactory;
-import org.apache.ftpserver.listener.Listener;
+import org.apache.ftpserver.listener.ListenerFactory;
import org.apache.ftpserver.test.TestUtil;
/**
@@ -41,12 +41,17 @@
protected FtpServerFactory createServer() throws Exception {
FtpServerFactory server = super.createServer();
- Listener l = server.getListener("default");
- DataConnectionConfiguration dcc = l.getDataConnectionConfiguration();
+ ListenerFactory listenerFactory = new ListenerFactory(server.getListener("default"));
+ DataConnectionConfigurationFactory dccFactory = new DataConnectionConfigurationFactory();
+
int passivePort = TestUtil.findFreePort(12444);
- dcc.setPassivePorts(passivePort + "-" + passivePort);
+ dccFactory.setPassivePorts(passivePort + "-" + passivePort);
+
+ listenerFactory.setDataConnectionConfiguration(dccFactory.createDataConnectionConfiguration());
+
+ server.addListener("default", listenerFactory.createListener());
return server;
}
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/UnlimitedMaxLoginTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/UnlimitedMaxLoginTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/UnlimitedMaxLoginTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/UnlimitedMaxLoginTest.java Mon Oct 13 14:24:27 2008
@@ -19,10 +19,8 @@
package org.apache.ftpserver.clienttests;
-import org.apache.ftpserver.DefaultConnectionConfig;
+import org.apache.ftpserver.ConnectionConfigFactory;
import org.apache.ftpserver.FtpServerFactory;
-import org.apache.ftpserver.impl.DefaultFtpServerContext;
-import org.apache.ftpserver.impl.DefaultFtpServer;
/**
*
@@ -38,9 +36,11 @@
protected FtpServerFactory createServer() throws Exception {
FtpServerFactory server = super.createServer();
- DefaultConnectionConfig cc = (DefaultConnectionConfig) server
- .getConnectionConfig();
- cc.setMaxLoginFailures(0);
+ ConnectionConfigFactory ccFactory = new ConnectionConfigFactory();
+
+ ccFactory.setMaxLoginFailures(0);
+
+ server.setConnectionConfig(ccFactory.createConnectionConfig());
return server;
}
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/config/spring/DbUserManagerConfigTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/config/spring/DbUserManagerConfigTest.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/config/spring/DbUserManagerConfigTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/config/spring/DbUserManagerConfigTest.java Mon Oct 13 14:24:27 2008
@@ -49,8 +49,7 @@
+ "<authenticate>AUTHENTICATE</authenticate>"
+ "</db-user-manager>");
- DbUserManager um = (DbUserManager) server.getServerContext()
- .getUserManager();
+ DbUserManager um = (DbUserManager) server.getUserManager();
assertTrue(um.getDataSource() instanceof jdbcDataSource);
assertTrue(um.getPasswordEncryptor() instanceof SaltedPasswordEncryptor);
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/ssl/SSLTestTemplate.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/ssl/SSLTestTemplate.java?rev=704254&r1=704253&r2=704254&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/ssl/SSLTestTemplate.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/ssl/SSLTestTemplate.java Mon Oct 13 14:24:27 2008
@@ -29,9 +29,10 @@
import javax.net.ssl.TrustManagerFactory;
import org.apache.commons.net.ftp.FTPSClient;
-import org.apache.ftpserver.DefaultDataConnectionConfiguration;
+import org.apache.ftpserver.DataConnectionConfigurationFactory;
import org.apache.ftpserver.FtpServerFactory;
import org.apache.ftpserver.clienttests.ClientTestTemplate;
+import org.apache.ftpserver.impl.DefaultDataConnectionConfiguration;
import org.apache.ftpserver.impl.DefaultFtpServerContext;
import org.apache.ftpserver.impl.DefaultFtpServer;
import org.apache.ftpserver.listener.ListenerFactory;
@@ -75,10 +76,10 @@
factory.setSslConfiguration(createSslConfiguration().createSslConfiguration());
- DefaultDataConnectionConfiguration dataConfig = new DefaultDataConnectionConfiguration();
+ DataConnectionConfigurationFactory dataConfig = new DataConnectionConfigurationFactory();
dataConfig.setSslConfiguration(createSslConfiguration().createSslConfiguration());
- factory.setDataConnectionConfiguration(dataConfig);
+ factory.setDataConnectionConfiguration(dataConfig.createDataConnectionConfiguration());
server.addListener("default", factory.createListener());