You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2009/12/27 13:01:57 UTC
svn commit: r894058 [2/3] - in
/james/server/sandbox/active/pure_spring_deployment:
avalon-socket-library/src/main/java/org/apache/james/socket/
avalon-user-function/src/main/java/org/apache/james/core/
avalon-user-function/src/main/java/org/apache/jam...
Modified: james/server/sandbox/active/pure_spring_deployment/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java Sun Dec 27 12:01:18 2009
@@ -31,6 +31,8 @@
import org.apache.commons.logging.Log;
import org.apache.james.api.dnsservice.DNSService;
import org.apache.james.api.kernel.LoaderService;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.services.FileSystem;
import org.apache.james.services.MailServer;
import org.apache.james.socket.mina.filter.ConnectionFilter;
@@ -50,7 +52,7 @@
* Abstract base class for Servers which want to use async io
*
*/
-public abstract class AbstractAsyncServer {
+public abstract class AbstractAsyncServer implements LogEnabled, Configurable{
/**
* The default value for the connection backlog.
*/
@@ -159,90 +161,15 @@
this.mailetcontext = mailetcontext;
}
- @Resource(name="org.apache.commons.logging.Log")
public final void setLog(Log logger) {
this.logger = logger;
}
- @Resource(name="org.apache.commons.configuration.Configuration")
- public final void setConfiguration(HierarchicalConfiguration config) {
- this.config = config;
- }
-
-
- @PostConstruct
- public void init() throws Exception {
- configure(config);
- doConfigure(config);
- if (isEnabled()) {
- preInit();
- buildSSLContextFactory();
- SocketAcceptor acceptor = new NioSocketAcceptor();
- acceptor.setFilterChainBuilder(createIoFilterChainBuilder());
- acceptor.setBacklog(backlog);
- acceptor.setReuseAddress(true);
- acceptor.getSessionConfig().setIdleTime( IdleStatus.BOTH_IDLE, timeout );
- acceptor.setHandler(createIoHandler());
- acceptor.bind(new InetSocketAddress(bindTo,port));
- }
- }
-
- /**
- * This method is called on init of the Server. Subclasses should override this method to init stuff
- *
- * @throws Exception
- */
- protected void preInit() throws Exception {
- // override me
- }
-
- protected void doConfigure(HierarchicalConfiguration config) throws Exception {
- // override me
- }
-
- /**
- * Return the DNSService
- *
- * @return dns
- */
- protected DNSService getDNSService() {
- return dns;
- }
-
- /**
- * Return the MailServer
- *
- * @return mailServer
- */
- protected MailServer getMailServer() {
- return mailServer;
- }
-
- /**
- * Return the MailetContext
- *
- * @return mailetContext
- */
- protected MailetContext getMailetContext() {
- return mailetcontext;
- }
-
- /**
- * Return the FileSystem
- *
- * @return fileSystem
- */
- protected FileSystem getFileSystem() {
- return fileSystem;
- }
-
-
- private void configure(Configuration configuration) throws ConfigurationException {
- if ((configuration instanceof HierarchicalConfiguration) == false) throw new ConfigurationException("Configuration must extend HierarchicalConfiguration");
-
- Configuration handlerConfiguration = ((HierarchicalConfiguration)configuration).configurationAt("handler");
+ public final void configure(HierarchicalConfiguration config) throws ConfigurationException{
+
+ Configuration handlerConfiguration = ((HierarchicalConfiguration)config).configurationAt("handler");
- enabled = configuration.getBoolean("[@enabled]", true);
+ enabled = config.getBoolean("[@enabled]", true);
final Log logger = getLogger();
if (!enabled) {
@@ -257,7 +184,7 @@
setStreamDumpDir(streamdumpDir);
*/
- port = configuration.getInt("port",getDefaultPort());
+ port = config.getInt("port",getDefaultPort());
@@ -265,7 +192,7 @@
try {
- final String bindAddress = configuration.getString("bind",null);
+ final String bindAddress = config.getString("bind",null);
if( null != bindAddress ) {
bindTo = InetAddress.getByName(bindAddress);
infoBuffer =
@@ -291,7 +218,7 @@
.append(timeout);
logger.info(infoBuffer.toString());
- backlog = configuration.getInt(BACKLOG_NAME,DEFAULT_BACKLOG);
+ backlog = config.getInt(BACKLOG_NAME,DEFAULT_BACKLOG);
infoBuffer =
new StringBuilder(64)
@@ -301,7 +228,7 @@
logger.info(infoBuffer.toString());
- String connectionLimitString = configuration.getString("connectionLimit",null);
+ String connectionLimitString = config.getString("connectionLimit",null);
if (connectionLimitString != null) {
try {
connectionLimit = new Integer(connectionLimitString);
@@ -342,18 +269,85 @@
}
- useStartTLS = configuration.getBoolean("startTLS.[@enable]", false);
+ useStartTLS = config.getBoolean("startTLS.[@enable]", false);
if (useStartTLS) {
- keystore = configuration.getString("startTLS.keystore", null);
+ keystore = config.getString("startTLS.keystore", null);
if (keystore == null) {
throw new ConfigurationException("keystore needs to get configured");
}
- secret = configuration.getString("startTLS.secret","");
+ secret = config.getString("startTLS.secret","");
}
+ doConfigure(config);
+
+ }
+
+
+ @PostConstruct
+ public void init() throws Exception {
+ if (isEnabled()) {
+ preInit();
+ buildSSLContextFactory();
+ SocketAcceptor acceptor = new NioSocketAcceptor();
+ acceptor.setFilterChainBuilder(createIoFilterChainBuilder());
+ acceptor.setBacklog(backlog);
+ acceptor.setReuseAddress(true);
+ acceptor.getSessionConfig().setIdleTime( IdleStatus.BOTH_IDLE, timeout );
+ acceptor.setHandler(createIoHandler());
+ acceptor.bind(new InetSocketAddress(bindTo,port));
+ }
}
+ /**
+ * This method is called on init of the Server. Subclasses should override this method to init stuff
+ *
+ * @throws Exception
+ */
+ protected void preInit() throws Exception {
+ // override me
+ }
+
+ protected void doConfigure(HierarchicalConfiguration config) throws ConfigurationException {
+ // override me
+ }
+
+ /**
+ * Return the DNSService
+ *
+ * @return dns
+ */
+ protected DNSService getDNSService() {
+ return dns;
+ }
+
+ /**
+ * Return the MailServer
+ *
+ * @return mailServer
+ */
+ protected MailServer getMailServer() {
+ return mailServer;
+ }
+
+ /**
+ * Return the MailetContext
+ *
+ * @return mailetContext
+ */
+ protected MailetContext getMailetContext() {
+ return mailetcontext;
+ }
+
+ /**
+ * Return the FileSystem
+ *
+ * @return fileSystem
+ */
+ protected FileSystem getFileSystem() {
+ return fileSystem;
+ }
+
/**
* Configure the helloName for the given Configuration
Modified: james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java Sun Dec 27 12:01:18 2009
@@ -24,6 +24,8 @@
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.nntpserver.DateSinceFileFilter;
import org.apache.james.nntpserver.NNTPException;
import org.apache.james.services.FileSystem;
@@ -53,7 +55,7 @@
/**
* NNTP Repository implementation.
*/
-public class NNTPRepositoryImpl implements NNTPRepository {
+public class NNTPRepositoryImpl implements NNTPRepository, Configurable, LogEnabled {
/**
* The configuration employed by this repository
@@ -142,31 +144,8 @@
private Log logger;
- @Resource(name="org.apache.commons.configuration.Configuration")
- public void setConfiguration(HierarchicalConfiguration configuration) {
+ public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{
this.configuration = configuration;
- }
-
- @Resource(name="org.apache.commons.logging.Log")
- public void setLogger(Log logger) {
- this.logger = logger;
- }
-
- /**
- * Setter for the FileSystem dependency
- *
- * @param system filesystem service
- */
- @Resource(name="filesystem")
- public void setFileSystem(FileSystem system) {
- this.fileSystem = system;
- }
-
- /**
- * @see org.apache.avalon.framework.configuration.Configurable#configure(Configuration)
- */
- @SuppressWarnings("unchecked")
- private void configure() throws ConfigurationException {
readOnly = configuration.getBoolean("readOnly", false);
articleIDDomainSuffix = configuration.getString("articleIDDomainSuffix", "foo.bar.sho.boo");
rootPathString = configuration.getString("rootPath", null);
@@ -204,12 +183,26 @@
}
logger.debug("Repository configuration done");
}
+
+ public void setLog(Log logger) {
+ this.logger = logger;
+ }
+
+ /**
+ * Setter for the FileSystem dependency
+ *
+ * @param system filesystem service
+ */
+ @Resource(name="filesystem")
+ public void setFileSystem(FileSystem system) {
+ this.fileSystem = system;
+ }
+
@PostConstruct
public void init() throws Exception {
logger.debug("Starting initialize");
- configure();
File articleIDPath = null;
try {
Modified: james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java Sun Dec 27 12:01:18 2009
@@ -108,10 +108,10 @@
throws Exception {
testConfiguration.init();
ConfigurationAdapter conf = new ConfigurationAdapter(testConfiguration);
- m_nntpServer.setConfiguration(conf);
+ m_nntpServer.configure(conf);
m_nntpServer.init();
- protoserver.setConfiguration(conf);
+ protoserver.configure(conf);
protoserver.init();
}
@@ -153,8 +153,7 @@
connectionManager = new SimpleConnectionManager();
connectionManager.setThreadManager(threadManager);
connectionManager.setLog(new SimpleLog("CM"));
- connectionManager.setConfiguration(new DefaultConfigurationBuilder());
- connectionManager.init();
+ connectionManager.configure(new DefaultConfigurationBuilder());
serviceManager.put(JamesConnectionManager.ROLE, connectionManager);
Modified: james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/JamesTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/JamesTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/JamesTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/JamesTest.java Sun Dec 27 12:01:18 2009
@@ -66,12 +66,11 @@
james.setSpoolRepository(mockMailRepository);
james.setStore(mockStore);
james.setUsersRepository(mockUsersRepository);
- james.setLogger(new SimpleLog("JamesLog"));
- james.setMailetLogger(new SimpleLog("MailetLog"));
+ james.setLog(new SimpleLog("JamesLog"));
try {
JamesTestConfiguration conf = new JamesTestConfiguration();
conf.init();
- james.setConfiguration(new ConfigurationAdapter(conf));
+ james.configure(new ConfigurationAdapter(conf));
james.init();
} catch (Exception e) {
e.printStackTrace();
@@ -83,9 +82,8 @@
protected void setUp() throws Exception{
super.setUp();
mockUsersRepository = new MockUsersRepository();
- mockUsersRepository.setLogger(new SimpleLog("MockLog"));
- mockUsersRepository.setConfiguration(new DefaultConfigurationBuilder());
- mockUsersRepository.init();
+ mockUsersRepository.setLog(new SimpleLog("MockLog"));
+ mockUsersRepository.configure(new DefaultConfigurationBuilder());
usersStore = new MockUsersStore(mockUsersRepository);
Modified: james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/smtpserver/SMTPServerRemoteDeliveryIntegrationTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/smtpserver/SMTPServerRemoteDeliveryIntegrationTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/smtpserver/SMTPServerRemoteDeliveryIntegrationTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/phoenix-deployment/src/test/org/apache/james/smtpserver/SMTPServerRemoteDeliveryIntegrationTest.java Sun Dec 27 12:01:18 2009
@@ -218,10 +218,10 @@
private void finishSetUp(SMTPTestConfiguration testConfiguration) throws Exception {
testConfiguration.init();
ConfigurationAdapter conf = new ConfigurationAdapter(testConfiguration);
- m_smtpServer.setConfiguration(conf);
+ m_smtpServer.configure(conf);
m_smtpServer.init();
- protoserver.setConfiguration(conf);
+ protoserver.configure(conf);
protoserver.init();
m_mailServer.setMaxMessageSizeBytes(m_testConfiguration.getMaxMessageSize()*1024);
}
@@ -246,8 +246,7 @@
connectionManager = new SimpleConnectionManager();
connectionManager.setThreadManager(threadManager);
connectionManager.setLog(new SimpleLog("CM"));
- connectionManager.setConfiguration(new DefaultConfigurationBuilder());
- connectionManager.init();
+ connectionManager.configure(new DefaultConfigurationBuilder());
m_serviceManager.put(SimpleConnectionManager.ROLE, connectionManager);
m_dnsServer = new AlterableDNSServer();
Modified: james/server/sandbox/active/pure_spring_deployment/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java Sun Dec 27 12:01:18 2009
@@ -119,10 +119,10 @@
throws Exception {
testConfiguration.init();
ConfigurationAdapter conf = new ConfigurationAdapter(testConfiguration);
- m_pop3Server.setConfiguration(conf);
+ m_pop3Server.configure(conf);
m_pop3Server.init();
- protoserver.setConfiguration(conf);
+ protoserver.configure(conf);
protoserver.init();
}
@@ -141,8 +141,7 @@
connectionManager = new SimpleConnectionManager();
connectionManager.setThreadManager(threadManager);
connectionManager.setLog(new SimpleLog("CM"));
- connectionManager.setConfiguration(new DefaultConfigurationBuilder());
- connectionManager.init();
+ connectionManager.configure(new DefaultConfigurationBuilder());
serviceManager.put(SimpleConnectionManager.ROLE, connectionManager);
dnsservice = setUpDNSServer();
Modified: james/server/sandbox/active/pure_spring_deployment/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java Sun Dec 27 12:01:18 2009
@@ -133,8 +133,8 @@
testConfiguration.init();
try {
ConfigurationAdapter conf = new ConfigurationAdapter(testConfiguration);
- protoserver.setConfiguration(conf);
- handlerFactory.setConfiguration(conf);
+ protoserver.configure(conf);
+ handlerFactory.configure(conf);
handlerFactory.init();
protoserver.init();
@@ -227,8 +227,7 @@
connectionManager = new SimpleConnectionManager();
connectionManager.setThreadManager(threadManager);
connectionManager.setLog(new SimpleLog("CM"));
- connectionManager.setConfiguration(new DefaultConfigurationBuilder());
- connectionManager.init();
+ connectionManager.configure(new DefaultConfigurationBuilder());
serviceManager.put(SimpleConnectionManager.ROLE, connectionManager);
dnsservice = setUpDNSServer();
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java Sun Dec 27 12:01:18 2009
@@ -28,9 +28,8 @@
import javax.annotation.Resource;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
-import org.apache.commons.configuration.ConfigurationUtils;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.james.dsn.DSNStatus;
@@ -88,8 +87,12 @@
this.dnsService = dnsService;
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
+ */
@SuppressWarnings("unchecked")
- public void configure(Configuration handlerConfiguration) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration handlerConfiguration) throws ConfigurationException {
boolean validConfig = false;
ArrayList<String> rblserverCollection = new ArrayList<String>();
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/MaxRcptHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/MaxRcptHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/MaxRcptHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/MaxRcptHandler.java Sun Dec 27 12:01:18 2009
@@ -22,8 +22,8 @@
package org.apache.james.smtpserver.protocol.core.fastfail;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.dsn.DSNStatus;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.smtpserver.protocol.SMTPRetCode;
@@ -37,10 +37,11 @@
private int maxRcpt = 0;
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration handlerConfiguration)
+ public void configure(HierarchicalConfiguration handlerConfiguration)
throws ConfigurationException {
int maxRcpt = handlerConfiguration.getInt("maxRcpt", 0);
setMaxRcpt(maxRcpt);
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ResolvableEhloHeloHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ResolvableEhloHeloHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ResolvableEhloHeloHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ResolvableEhloHeloHandler.java Sun Dec 27 12:01:18 2009
@@ -23,8 +23,8 @@
import javax.annotation.Resource;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.dsn.DSNStatus;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.smtpserver.protocol.DNSService;
@@ -65,11 +65,11 @@
this.dnsService = dnsService;
}
- /**
+ /*
* (non-Javadoc)
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration handlerConfiguration)
+ public void configure(HierarchicalConfiguration handlerConfiguration)
throws ConfigurationException {
setCheckAuthNetworks(handlerConfiguration.getBoolean("checkAuthNetworks",false));
}
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SPFHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SPFHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SPFHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SPFHandler.java Sun Dec 27 12:01:18 2009
@@ -21,8 +21,8 @@
package org.apache.james.smtpserver.protocol.core.fastfail;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.james.dsn.DSNStatus;
@@ -92,10 +92,12 @@
this.serviceLog = log;
}
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration handlerConfiguration)
+ public void configure(HierarchicalConfiguration handlerConfiguration)
throws ConfigurationException {
setBlockSoftFail(handlerConfiguration.getBoolean( "blockSoftFail", false));
setBlockPermError(handlerConfiguration.getBoolean("blockPermError", true));
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SpamTrapHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SpamTrapHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SpamTrapHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/SpamTrapHandler.java Sun Dec 27 12:01:18 2009
@@ -26,8 +26,8 @@
import java.util.List;
import java.util.Map;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.smtpserver.protocol.SMTPSession;
import org.apache.james.smtpserver.protocol.hook.HookResult;
@@ -48,12 +48,13 @@
/** Default blocktime 12 hours */
private long blockTime = 4320000;
-
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
@SuppressWarnings("unchecked")
- public void configure(Configuration config) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
List<String> rcpts= config.getList("spamTrapRecip");
if (rcpts.isEmpty() == false ) {
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/TarpitHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/TarpitHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/TarpitHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/TarpitHandler.java Sun Dec 27 12:01:18 2009
@@ -22,8 +22,8 @@
package org.apache.james.smtpserver.protocol.core.fastfail;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.smtpserver.protocol.SMTPSession;
import org.apache.james.smtpserver.protocol.hook.HookResult;
@@ -41,10 +41,12 @@
private long tarpitSleepTime = 5000;
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration handlerConfiguration)
+ public void configure(HierarchicalConfiguration handlerConfiguration)
throws ConfigurationException {
setTarpitRcptCount(handlerConfiguration.getInt("tarpitRcptCount", 0));
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ValidSenderDomainHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ValidSenderDomainHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ValidSenderDomainHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/ValidSenderDomainHandler.java Sun Dec 27 12:01:18 2009
@@ -22,8 +22,8 @@
import javax.annotation.Resource;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.dsn.DSNStatus;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.smtpserver.protocol.DNSService;
@@ -62,10 +62,11 @@
}
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration handlerConfiguration) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration handlerConfiguration) throws ConfigurationException {
setCheckAuthNetworks(handlerConfiguration.getBoolean("checkAuthNetworks",false));
}
Modified: james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/test/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandlerTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/test/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandlerTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/test/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandlerTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtp-protocol-library/src/test/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandlerTest.java Sun Dec 27 12:01:18 2009
@@ -20,24 +20,20 @@
package org.apache.james.smtpserver.protocol.core.fastfail;
-import java.math.BigDecimal;
-import java.math.BigInteger;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.Properties;
import javax.mail.internet.ParseException;
import junit.framework.TestCase;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.DefaultConfigurationBuilder;
import org.apache.james.smtpserver.protocol.BaseFakeDNSService;
import org.apache.james.smtpserver.protocol.BaseFakeSMTPSession;
import org.apache.james.smtpserver.protocol.DNSService;
@@ -246,176 +242,7 @@
boolean exception = false;
DNSRBLHandler rbl = new DNSRBLHandler();
try {
- rbl.configure(new Configuration() {
-
- public Configuration subset(String prefix) {
- return null;
- }
-
- public void setProperty(String key, Object value) {
-
- }
-
- public boolean isEmpty() {
- return true;
- }
-
- public String[] getStringArray(String key) {
- return null;
- }
-
- public String getString(String key, String defaultValue) {
- return null;
- }
-
- public String getString(String key) {
- return null;
- }
-
- public Short getShort(String key, Short defaultValue) {
- return null;
- }
-
- public short getShort(String key, short defaultValue) {
- return 0;
- }
-
- public short getShort(String key) {
- return 0;
- }
-
- public Object getProperty(String key) {
- return null;
- }
-
- public Properties getProperties(String key) {
- return null;
- }
-
- public Long getLong(String key, Long defaultValue) {
- return null;
- }
-
- public long getLong(String key, long defaultValue) {
- return 0;
- }
-
- public long getLong(String key) {
- return 0;
- }
-
- @SuppressWarnings("unchecked")
- public List getList(String key, List defaultValue) {
- return null;
- }
-
- @SuppressWarnings("unchecked")
- public List getList(String key) {
- return null;
- }
-
- @SuppressWarnings("unchecked")
- public Iterator getKeys(String prefix) {
- return null;
- }
-
- @SuppressWarnings("unchecked")
- public Iterator getKeys() {
- return null;
- }
-
- public Integer getInteger(String key, Integer defaultValue) {
- return null;
- }
-
- public int getInt(String key, int defaultValue) {
- return 0;
- }
-
- public int getInt(String key) {
- return 0;
- }
-
- public Float getFloat(String key, Float defaultValue) {
- return null;
- }
-
- public float getFloat(String key, float defaultValue) {
- return 0;
- }
-
- public float getFloat(String key) {
- return 0;
- }
-
- public Double getDouble(String key, Double defaultValue) {
- return null;
- }
-
- public double getDouble(String key, double defaultValue) {
- return 0;
- }
-
- public double getDouble(String key) {
- return 0;
- }
-
- public Byte getByte(String key, Byte defaultValue) {
- return null;
- }
-
- public byte getByte(String key, byte defaultValue) {
- return 0;
- }
-
- public byte getByte(String key) {
- return 0;
- }
-
- public Boolean getBoolean(String key, Boolean defaultValue) {
- return null;
- }
-
- public boolean getBoolean(String key, boolean defaultValue) {
- return false;
- }
-
- public boolean getBoolean(String key) {
- return false;
- }
-
- public BigInteger getBigInteger(String key, BigInteger defaultValue) {
- return null;
- }
-
- public BigInteger getBigInteger(String key) {
- return null;
- }
-
- public BigDecimal getBigDecimal(String key, BigDecimal defaultValue) {
- return null;
- }
-
- public BigDecimal getBigDecimal(String key) {
- return null;
- }
-
- public boolean containsKey(String key) {
- return false;
- }
-
- public void clearProperty(String key) {
-
- }
-
- public void clear() {
-
- }
-
- public void addProperty(String key, Object value) {
-
- }
- });
+ rbl.configure(new DefaultConfigurationBuilder());
} catch (ConfigurationException e) {
exception = true;
}
Modified: james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java Sun Dec 27 12:01:18 2009
@@ -38,8 +38,8 @@
import org.apache.avalon.cornerstone.services.datasources.DataSourceSelector;
import org.apache.avalon.excalibur.datasource.DataSourceComponent;
import org.apache.avalon.framework.service.ServiceException;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.james.api.dnsservice.DNSService;
@@ -208,7 +208,7 @@
* @see org.apache.james.smtpserver.protocol.core.fastfail.AbstractGreylistHandler#configure(org.apache.commons.configuration.Configuration)
*/
@SuppressWarnings("unchecked")
- public void configure(Configuration handlerConfiguration) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration handlerConfiguration) throws ConfigurationException {
try {
setTempBlockTime(handlerConfiguration.getString("tempBlockTime"));
} catch (NumberFormatException e) {
Modified: james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/SpamAssassinHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/SpamAssassinHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/SpamAssassinHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/SpamAssassinHandler.java Sun Dec 27 12:01:18 2009
@@ -25,8 +25,8 @@
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.dsn.DSNStatus;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.smtpserver.protocol.SMTPSession;
@@ -70,10 +70,11 @@
private boolean checkAuthNetworks = false;
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration config) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
setSpamdHost(config.getString("spamdHost","localhost"));
setSpamdPort(config.getInt("spamdPort",783));
setSpamdRejectionHits(config.getDouble("spamdRejectionHits", 0.0));
Modified: james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/URIRBLHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/URIRBLHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/URIRBLHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/URIRBLHandler.java Sun Dec 27 12:01:18 2009
@@ -36,8 +36,8 @@
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimePart;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.james.api.dnsservice.DNSService;
@@ -100,11 +100,11 @@
-
- /**
- * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
- public void configure(Configuration config) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
String[] servers = config.getStringArray("uriRblServers/server");
Collection<String> serverCollection = new ArrayList<String>();
for ( int i = 0 ; i < servers.length ; i++ ) {
Modified: james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptHandler.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptHandler.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptHandler.java Sun Dec 27 12:01:18 2009
@@ -28,6 +28,7 @@
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.james.api.user.UsersRepository;
import org.apache.james.api.vut.ErrorMappingException;
import org.apache.james.api.vut.VirtualUserTable;
@@ -107,7 +108,7 @@
* @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
*/
@SuppressWarnings("unchecked")
- public void configure(Configuration config) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
setValidRecipients(config.getList("validRecipients"));
setValidDomains(config.getList("validDomains"));
try {
Modified: james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptMX.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptMX.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptMX.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/ValidRcptMX.java Sun Dec 27 12:01:18 2009
@@ -27,8 +27,8 @@
import javax.annotation.Resource;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.james.api.dnsservice.DNSService;
@@ -93,7 +93,7 @@
* @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.Configuration)
*/
@SuppressWarnings("unchecked")
- public void configure(Configuration config) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
List<String> networks = config.getList("invalidMXNetworks");
Modified: james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/smtpserver-function/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java Sun Dec 27 12:01:18 2009
@@ -229,10 +229,10 @@
protected void finishSetUp(SMTPTestConfiguration testConfiguration) throws Exception {
testConfiguration.init();
ConfigurationAdapter conf = new ConfigurationAdapter(testConfiguration);
- m_smtpServer.setConfiguration(conf);
+ m_smtpServer.configure(conf);
m_smtpServer.init();
- protoServer.setConfiguration(conf);
+ protoServer.configure(conf);
protoServer.init();
m_mailServer.setMaxMessageSizeBytes(m_testConfiguration.getMaxMessageSize()*1024);
@@ -256,8 +256,7 @@
connectionManager = new SimpleConnectionManager();
connectionManager.setThreadManager(threadManager);
connectionManager.setLog(new SimpleLog("CM"));
- connectionManager.setConfiguration(new DefaultConfigurationBuilder());
- connectionManager.init();
+ connectionManager.configure(new DefaultConfigurationBuilder());
m_serviceManager.put(SimpleConnectionManager.ROLE, connectionManager);
m_dnsServer = new AlterableDNSServer();
Modified: james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/AbstractProtocolHandlerFactory.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/AbstractProtocolHandlerFactory.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/AbstractProtocolHandlerFactory.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/AbstractProtocolHandlerFactory.java Sun Dec 27 12:01:18 2009
@@ -27,17 +27,18 @@
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.james.api.dnsservice.DNSService;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.socket.api.ProtocolHandlerFactory;
/**
* Abstract base class which ProtocolHandlerFactory implementation should extend
*
*/
-public abstract class AbstractProtocolHandlerFactory implements ProtocolHandlerFactory{
+public abstract class AbstractProtocolHandlerFactory implements ProtocolHandlerFactory, LogEnabled, Configurable{
private DNSService dnsService;
- private HierarchicalConfiguration configuration;
private Log log;
@@ -61,30 +62,23 @@
return dnsService;
}
- @Resource(name="org.apache.commons.configuration.Configuration")
- public void setConfiguration(HierarchicalConfiguration configuration) {
- this.configuration = configuration;
+ public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{
+
+ configureHelloName(configuration.configurationAt("handler"));
+ onConfigure(configuration);
}
- @Resource(name="org.apache.commons.logging.Log")
public void setLog(Log logger) {
this.log = logger;
}
@PostConstruct
public void init() throws Exception {
- configure();
onInit();
}
- private void configure() throws ConfigurationException {
- configureHelloName(configuration.configurationAt("handler"));
- onConfigure(configuration);
- }
-
-
private void configureHelloName(HierarchicalConfiguration handlerConfiguration) {
StringBuilder infoBuffer;
String hostName = null;
Modified: james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/ProtocolHandlerChainImpl.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/ProtocolHandlerChainImpl.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/ProtocolHandlerChainImpl.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/socket-shared-library/src/main/java/org/apache/james/socket/shared/ProtocolHandlerChainImpl.java Sun Dec 27 12:01:18 2009
@@ -26,9 +26,8 @@
import javax.annotation.Resource;
-import org.apache.commons.configuration.BaseConfiguration;
-import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.DefaultConfigurationBuilder;
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -74,7 +73,7 @@
/** Loads instances */
private LoaderService loader;
- protected Configuration commonsConf;
+ protected HierarchicalConfiguration commonsConf;
/**
@@ -125,7 +124,7 @@
* @throws ConfigurationException Get thrown on error
*/
protected void loadClass(ClassLoader classLoader, String className,
- org.apache.commons.configuration.Configuration config) throws Exception {
+ org.apache.commons.configuration.HierarchicalConfiguration config) throws Exception {
final Class<?> handlerClass = classLoader.loadClass(className);
Object handler = loader.load(handlerClass);
@@ -148,7 +147,7 @@
for (Iterator<String> i = c.iterator(); i.hasNext(); ) {
String cName = i.next();
- Configuration cmdConf = addHandler(cName);
+ HierarchicalConfiguration cmdConf = addHandler(cName);
loadClass(classLoader, cName, cmdConf);
}
@@ -171,8 +170,8 @@
* @return DefaultConfiguration
* @throws ConfigurationException
*/
- protected Configuration addHandler(String className) throws ConfigurationException {
- Configuration hConf = new BaseConfiguration();
+ protected HierarchicalConfiguration addHandler(String className) throws ConfigurationException {
+ HierarchicalConfiguration hConf = new DefaultConfigurationBuilder();
hConf.addProperty("handler/@class", className);
return hConf;
}
@@ -203,7 +202,7 @@
protected void loadHandlers() throws Exception {
if (commonsConf != null && commonsConf instanceof HierarchicalConfiguration) {
- List<org.apache.commons.configuration.Configuration> children = ((HierarchicalConfiguration) commonsConf).configurationsAt("handler");
+ List<org.apache.commons.configuration.HierarchicalConfiguration> children = ((HierarchicalConfiguration) commonsConf).configurationsAt("handler");
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
String coreCmdName = commonsConf.getString("[@coreHandlersPackage]");
@@ -215,7 +214,7 @@
if (children != null && children.isEmpty() == false) {
for (int i = 0; i < children.size(); i++) {
- org.apache.commons.configuration.Configuration hConf = children.get(i);
+ org.apache.commons.configuration.HierarchicalConfiguration hConf = children.get(i);
String className = hConf.getString("[@class]");
if (className != null) {
@@ -237,7 +236,7 @@
*
* @param commonsConf
*/
- public void configure(Configuration commonsConf) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration commonsConf) throws ConfigurationException {
this.commonsConf = commonsConf;
try {
loadHandlers();
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/James.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/James.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/James.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/James.java Sun Dec 27 12:01:18 2009
@@ -39,6 +39,8 @@
import org.apache.james.core.MailHeaders;
import org.apache.james.core.MailImpl;
import org.apache.james.impl.jamesuser.JamesUsersRepository;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.services.FileSystem;
import org.apache.james.services.MailRepository;
import org.apache.james.services.MailServer;
@@ -91,7 +93,7 @@
*/
@SuppressWarnings("unchecked")
public class James
- implements MailServer, MailetContext {
+ implements MailServer, MailetContext, LogEnabled, Configurable {
/**
* The software name and version
@@ -106,7 +108,7 @@
/**
* The logger used by the Mailet API.
*/
- private Log mailetLogger = null;
+ //private Log mailetLogger = null;
/**
* The mail store containing the inbox repository and the spool.
@@ -201,22 +203,15 @@
this.dns = dns;
}
- @Resource(name="org.apache.commons.logging.Log")
- public final void setLogger(Log logger) {
+ public final void setLog(Log logger) {
this.logger = logger;
}
- @Resource(name="org.apache.commons.configuration.Configuration")
- public final void setConfiguration(HierarchicalConfiguration config) {
- this.conf = config;
- }
-
-
- @Resource(name="org.apache.commons.logging.Log@MailetLog")
- public final void setMailetLogger(Log mailetLogger) {
- this.mailetLogger = mailetLogger;
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
+ this.conf = (HierarchicalConfiguration)config;
}
+
@PostConstruct
public void init() throws Exception {
@@ -867,7 +862,7 @@
* @return the logger for the Mailet API
*/
private Log getMailetLogger() {
- return mailetLogger;
+ return logger;
}
/**
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/AbstractLoader.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/AbstractLoader.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/AbstractLoader.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/AbstractLoader.java Sun Dec 27 12:01:18 2009
@@ -30,13 +30,15 @@
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.james.api.kernel.LoaderService;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.mailet.MailetContext;
import org.apache.mailet.MailetException;
/**
* Common services for loaders.
*/
-public abstract class AbstractLoader {
+public abstract class AbstractLoader implements LogEnabled, Configurable{
/**
* The list of packages that may contain Mailets or matchers
@@ -52,8 +54,6 @@
private Log logger;
- private HierarchicalConfiguration config;
-
/**
* Gets the loader service used by this instance.
@@ -72,16 +72,10 @@
this.loaderService = loaderService;
}
- @Resource(name="org.apache.commons.logging.Log")
- public final void setLogger(Log logger) {
+ public final void setLog(Log logger) {
this.logger = logger;
}
-
- @Resource(name="org.apache.commons.configuration.Configuration")
- public final void setConfiguration(HierarchicalConfiguration config) {
- this.config = config;
- }
/**
* Set the MailetContext
*
@@ -115,13 +109,7 @@
}
}
- @PostConstruct
- public void init() throws Exception {
- configure(config);
- }
-
- protected abstract void configure(HierarchicalConfiguration arg0) throws ConfigurationException;
-
+
/**
* Gets a human readable description of the loader.
* Used for messages.
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMailetLoader.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMailetLoader.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMailetLoader.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMailetLoader.java Sun Dec 27 12:01:18 2009
@@ -35,15 +35,11 @@
private static final String DISPLAY_NAME = "mailet";
private final String MAILET_PACKAGE = "mailetpackage";
-
- @PostConstruct
- public void init() throws Exception {
- super.init();
- }
- /**
- * @see org.apache.james.transport.AbstractLoader#configure(org.apache.commons.configuration.HierarchicalConfiguration)
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
public void configure(HierarchicalConfiguration conf) throws ConfigurationException {
getPackages(conf,MAILET_PACKAGE);
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMatcherLoader.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMatcherLoader.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMatcherLoader.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesMatcherLoader.java Sun Dec 27 12:01:18 2009
@@ -34,15 +34,10 @@
private static final String DISPLAY_NAME = "matcher";
private final String MATCHER_PACKAGE = "matcherpackage";
-
- @PostConstruct
- public void init() throws Exception {
- super.init();
- }
-
-
- /**
- * @see org.apache.james.transport.AbstractLoader#configure(org.apache.commons.configuration.HierarchicalConfiguration)
+
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.lifecycle.Configurable#configure(org.apache.commons.configuration.HierarchicalConfiguration)
*/
public void configure(HierarchicalConfiguration conf) throws ConfigurationException {
getPackages(conf,MATCHER_PACKAGE);
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesSpoolManager.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesSpoolManager.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesSpoolManager.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/JamesSpoolManager.java Sun Dec 27 12:01:18 2009
@@ -35,6 +35,8 @@
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.james.api.kernel.LoaderService;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.services.SpoolManager;
import org.apache.james.services.SpoolRepository;
import org.apache.mailet.Mail;
@@ -49,7 +51,7 @@
*
* @version CVS $Revision$ $Date$
*/
-public class JamesSpoolManager implements Runnable, SpoolManager {
+public class JamesSpoolManager implements Runnable, SpoolManager, LogEnabled, Configurable {
/**
* The spool that this manager will process
@@ -120,18 +122,13 @@
this.loaderService = service;
}
- @Resource(name="org.apache.commons.logging.Log")
- public final void setLogger(Log logger) {
+ public final void setLog(Log logger) {
this.logger = logger;
}
- @Resource(name="org.apache.commons.configuration.Configuration")
- public final void setConfiguration(HierarchicalConfiguration config) {
- this.config = config;
- }
- protected void configure(HierarchicalConfiguration config) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration config) throws ConfigurationException {
numThreads = config.getInt("threads",1);
String processorClass = config.getString("processorClass","org.apache.james.transport.StateAwareProcessorList");
@@ -151,7 +148,6 @@
@PostConstruct
public void init() throws Exception {
logger.info("JamesSpoolManager init...");
- configure(config);
ContainerUtil.initialize(processorList);
if (logger.isInfoEnabled()) {
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/LinearProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/LinearProcessor.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/LinearProcessor.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/LinearProcessor.java Sun Dec 27 12:01:18 2009
@@ -30,7 +30,6 @@
import java.util.List;
import java.util.Locale;
-import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;
import javax.mail.MessagingException;
@@ -40,6 +39,8 @@
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.james.core.MailImpl;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.services.SpoolRepository;
import org.apache.mailet.Mail;
import org.apache.mailet.MailAddress;
@@ -85,7 +86,7 @@
* <P>CVS $Id$</P>
* @version 2.2.0
*/
-public class LinearProcessor implements MailProcessor, MailetContainer {
+public class LinearProcessor implements MailProcessor, MailetContainer, LogEnabled, Configurable {
/**
* The name of the matcher used to terminate the matcher chain. The
@@ -116,8 +117,6 @@
private Log logger;
- private HierarchicalConfiguration config;
-
/**
* Set the spool to be used by this LinearProcessor.
*
@@ -154,16 +153,9 @@
}
- @Resource(name="org.apache.commons.logging.Log")
- public final void setLogger(Log logger) {
+ public final void setLog(Log logger) {
this.logger = logger;
}
-
- @Resource(name="org.apache.commons.configuration.Configuration")
- public final void setConfiguration(HierarchicalConfiguration config) {
- this.config = config;
- }
-
/**
* <p>The dispose operation is called at the end of a components lifecycle.
@@ -574,13 +566,8 @@
mailets = new ArrayList<Mailet>();
}
- @PostConstruct
- public void init() throws Exception {
- configure(config);
- }
-
@SuppressWarnings("unchecked")
- protected void configure(HierarchicalConfiguration processorConf) throws ConfigurationException {
+ public void configure(HierarchicalConfiguration processorConf) throws ConfigurationException {
openProcessorList();
final List<HierarchicalConfiguration> mailetConfs
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/StateAwareProcessorList.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/StateAwareProcessorList.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/StateAwareProcessorList.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/main/java/org/apache/james/transport/StateAwareProcessorList.java Sun Dec 27 12:01:18 2009
@@ -22,8 +22,11 @@
package org.apache.james.transport;
+import org.apache.avalon.framework.configuration.ConfigurationException;
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.commons.logging.Log;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import org.apache.james.services.SpoolRepository;
import org.apache.mailet.Mail;
import org.apache.mailet.MailetException;
@@ -47,9 +50,8 @@
* This class is responsible for creating a set of named processors and
* directing messages to the appropriate processor (given the State of the mail)
*
- * @version CVS $Revision: 405882 $ $Date: 2006-05-12 23:30:04 +0200 (ven, 12 mag 2006) $
*/
-public class StateAwareProcessorList implements MailProcessor, ProcessorList {
+public class StateAwareProcessorList implements MailProcessor, ProcessorList, LogEnabled, Configurable {
/**
* The map of processor names to processors
@@ -72,17 +74,11 @@
}
- @Resource(name="org.apache.commons.logging.Log")
- public final void setLogger(Log logger) {
+ public final void setLog(Log logger) {
this.logger = logger;
}
-
- @Resource(name="org.apache.commons.configuration.Configuration")
- public final void setConfiguration(HierarchicalConfiguration config) {
- this.config = config;
- }
-
+
@Resource(name="mailetpackages")
public final void setMailetLoader(MailetLoader mailetLoader) {
this.mailetLoader = mailetLoader;
@@ -276,4 +272,10 @@
return (MailProcessor) processors.get(name);
}
+
+ public void configure(HierarchicalConfiguration config)
+ throws org.apache.commons.configuration.ConfigurationException {
+ this.config = config;
+ }
+
}
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/JamesMailetLoaderTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/JamesMailetLoaderTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/JamesMailetLoaderTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/JamesMailetLoaderTest.java Sun Dec 27 12:01:18 2009
@@ -67,10 +67,9 @@
private void setUpLoader() throws Exception {
m_conf.init();
- m_jamesMailetLoader.setLogger(new SimpleLog("Test"));
- m_jamesMailetLoader.setConfiguration(new ConfigurationAdapter(m_conf));
+ m_jamesMailetLoader.setLog(new SimpleLog("Test"));
+ m_jamesMailetLoader.configure(new ConfigurationAdapter(m_conf));
m_jamesMailetLoader.setLoaderService(new FakeLoaderService());
- m_jamesMailetLoader.init();
}
private void assetIsNullMailet(Mailet mailet) {
Modified: james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/LinearProcessorTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/LinearProcessorTest.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/LinearProcessorTest.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/spoolmanager-function/src/test/java/org/apache/james/transport/LinearProcessorTest.java Sun Dec 27 12:01:18 2009
@@ -124,7 +124,7 @@
public void testCopyOnWrite() throws IOException, MessagingException {
linearProcessor.setSpoolRepository(new InMemorySpoolRepository());
- linearProcessor.setLogger(new SimpleLog("Test"));
+ linearProcessor.setLog(new SimpleLog("Test"));
Matcher recipientIs = new RecipientIs();
recipientIs.init(new DummyMatcherConfig("rec1@domain.com"));
@@ -180,7 +180,7 @@
super.store(mc);
}
});
- linearProcessor.setLogger(new SimpleLog("Test"));
+ linearProcessor.setLog(new SimpleLog("Test"));
Matcher recipientIs = new RecipientIs();
@@ -235,7 +235,7 @@
}
mimeMessage = new MimeMessageCopyOnWriteProxy(mmis);
linearProcessor = new LinearProcessor();
- linearProcessor.setLogger(new SimpleLog("Logger"));
+ linearProcessor.setLog(new SimpleLog("Logger"));
}
public void tearDown() throws Exception {
Added: james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifeCycleBeanPostProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifeCycleBeanPostProcessor.java?rev=894058&view=auto
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifeCycleBeanPostProcessor.java (added)
+++ james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifeCycleBeanPostProcessor.java Sun Dec 27 12:01:18 2009
@@ -0,0 +1,53 @@
+package org.apache.james.container.spring.lifecycle;
+
+import java.util.Map;
+
+import org.springframework.beans.BeansException;
+import org.springframework.beans.FatalBeanException;
+import org.springframework.beans.factory.config.BeanPostProcessor;
+import org.springframework.core.Ordered;
+
+public abstract class AbstractLifeCycleBeanPostProcessor<T> implements BeanPostProcessor, Ordered{
+
+ private Map<String, String> mappings;
+
+ public void setMappings(Map<String,String> mappings) {
+ this.mappings = mappings;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization(java.lang.Object, java.lang.String)
+ */
+ public Object postProcessAfterInitialization(Object bean, String name)
+ throws BeansException {
+ return bean;
+ }
+
+ protected abstract Class<T> getLifeCycleInterface();
+
+ /*
+ * (non-Javadoc)
+ * @see org.springframework.beans.factory.config.BeanPostProcessor#postProcessBeforeInitialization(java.lang.Object, java.lang.String)
+ */
+ @SuppressWarnings("unchecked")
+ public Object postProcessBeforeInitialization(Object bean, String name)
+ throws BeansException {
+ try {
+ Class<T> lClass = getLifeCycleInterface();
+ if (lClass.isInstance(bean)) executeLifecycleMethod((T)bean, name, getMapping(name));
+ } catch (Exception e) {
+ throw new FatalBeanException("Unable to execute lifecycle method on bean" + name,e);
+ }
+ return bean;
+ }
+
+ protected abstract void executeLifecycleMethod(T bean, String beanname, String lifecyclename) throws Exception;
+
+ private String getMapping(String name) {
+ String newname = mappings.get(name);
+ if (newname == null) newname = name;
+ return newname;
+ }
+
+}
Added: james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/ConfigurationBeanPostProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/ConfigurationBeanPostProcessor.java?rev=894058&view=auto
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/ConfigurationBeanPostProcessor.java (added)
+++ james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/ConfigurationBeanPostProcessor.java Sun Dec 27 12:01:18 2009
@@ -0,0 +1,88 @@
+/****************************************************************
+ * 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.james.container.spring.lifecycle;
+
+import org.apache.commons.configuration.HierarchicalConfiguration;
+import org.apache.commons.configuration.XMLConfiguration;
+import org.apache.james.lifecycle.Configurable;
+import org.springframework.context.ResourceLoaderAware;
+import org.springframework.core.io.Resource;
+import org.springframework.core.io.ResourceLoader;
+
+public class ConfigurationBeanPostProcessor extends
+ AbstractLifeCycleBeanPostProcessor<Configurable> implements
+ ResourceLoaderAware {
+
+ private XMLConfiguration config;
+ private String configFile;
+ private ResourceLoader loader;
+
+ public void setConfigFile(String configFile) {
+ this.configFile = configFile;
+ }
+
+ public void init() {
+ Resource resource = loader.getResource(configFile);
+ if (!resource.exists()) {
+ throw new RuntimeException("could not locate configuration file "
+ + configFile);
+ }
+ try {
+ config = new XMLConfiguration();
+ config.setDelimiterParsingDisabled(true);
+ config.load(resource.getFile());
+ } catch (Exception e1) {
+ throw new RuntimeException("could not open configuration file "
+ + configFile, e1);
+ }
+ }
+
+ @Override
+ protected void executeLifecycleMethod(Configurable bean, String beanname,
+ String lifecyclename) throws Exception {
+ HierarchicalConfiguration beanConfig = config.configurationAt(lifecyclename);
+ bean.configure(beanConfig);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.core.Ordered#getOrder()
+ */
+ public int getOrder() {
+ return 2;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.springframework.context.ResourceLoaderAware#setResourceLoader(org
+ * .springframework.core.io.ResourceLoader)
+ */
+ public void setResourceLoader(ResourceLoader loader) {
+ this.loader = loader;
+ }
+
+ @Override
+ protected Class<Configurable> getLifeCycleInterface() {
+ return Configurable.class;
+ }
+
+}
Added: james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/LogEnabledBeanPostProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/LogEnabledBeanPostProcessor.java?rev=894058&view=auto
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/LogEnabledBeanPostProcessor.java (added)
+++ james/server/sandbox/active/pure_spring_deployment/spring-deployment/src/main/java/org/apache/james/container/spring/lifecycle/LogEnabledBeanPostProcessor.java Sun Dec 27 12:01:18 2009
@@ -0,0 +1,44 @@
+/****************************************************************
+ * 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.james.container.spring.lifecycle;
+
+import org.apache.commons.logging.impl.Log4JLogger;
+import org.apache.james.lifecycle.LogEnabled;
+
+public class LogEnabledBeanPostProcessor extends AbstractLifeCycleBeanPostProcessor<LogEnabled> {
+
+ @Override
+ protected void executeLifecycleMethod(LogEnabled bean, String beanname,
+ String lifecyclename) throws Exception {
+ bean.setLog(new Log4JLogger(lifecyclename));
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.springframework.core.Ordered#getOrder()
+ */
+ public int getOrder() {
+ return 1;
+ }
+
+ @Override
+ protected Class<LogEnabled> getLifeCycleInterface() {
+ return LogEnabled.class;
+ }
+}
Modified: james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/AbstractUsersRepository.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/AbstractUsersRepository.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/AbstractUsersRepository.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/AbstractUsersRepository.java Sun Dec 27 12:01:18 2009
@@ -28,6 +28,8 @@
import org.apache.james.api.user.User;
import org.apache.james.api.vut.ErrorMappingException;
import org.apache.james.impl.user.DefaultUser;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
import java.util.ArrayList;
import java.util.Collection;
@@ -41,7 +43,7 @@
* implementations, and makes it easier to create new User repositories.</p>
*
*/
-public abstract class AbstractUsersRepository implements JamesUsersRepository {
+public abstract class AbstractUsersRepository implements JamesUsersRepository, LogEnabled, Configurable {
/**
* Ignore case in usernames
@@ -58,26 +60,14 @@
*/
protected boolean enableForwarding;
- private HierarchicalConfiguration configuration;
private Log logger;
- @Resource(name="org.apache.commons.logging.Log")
- public void setLogger(Log logger) {
+ public void setLog(Log logger) {
this.logger = logger;
}
- @Resource(name="org.apache.commons.configuration.Configuration")
- public void setConfiguration(HierarchicalConfiguration configuration) {
- this.configuration = configuration;
- }
-
- @PostConstruct
- public void init() throws Exception{
- configure();
- }
-
- private void configure() throws ConfigurationException {
+ public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{
setIgnoreCase(configuration.getBoolean("usernames", false));
setEnableAliases(configuration.getBoolean("enableAliases", false));
setEnableForwarding(configuration.getBoolean("enableForwarding", false));
Modified: james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/LocalJamesUsersRepository.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/LocalJamesUsersRepository.java?rev=894058&r1=894057&r2=894058&view=diff
==============================================================================
--- james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/LocalJamesUsersRepository.java (original)
+++ james/server/sandbox/active/pure_spring_deployment/user-library/src/main/java/org/apache/james/impl/jamesuser/LocalJamesUsersRepository.java Sun Dec 27 12:01:18 2009
@@ -24,8 +24,6 @@
import java.util.Collection;
-import javax.annotation.PostConstruct;
-
/**
* This is a wrapper that provide access to the "LocalUsers" repository
* but expect to find a JamesUsersRepository and return an object implementing
@@ -35,12 +33,6 @@
- // REMOVE ME!!!
- @Override
- @PostConstruct
- public void init() throws Exception {
- super.init();
- }
/**
* @see org.apache.james.impl.jamesuser.JamesUsersRepository#setEnableAliases(boolean)
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org