Author: norman
Date: Wed Sep 23 11:18:44 2009
New Revision: 818060

URL: http://svn.apache.org/viewvc?rev=818060&view=rev
Log:
Move Configuration related stuff to an extra package 
Add abstract base class for handlers which need to be configurable (JAMES-918)

Added:
    
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/
    
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/AbstractConfigurableHandler.java
    
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/Configurable.java
      - copied, changed from r812610, 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/Configurable.java
    
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/JamesConfiguration.java
      - copied, changed from r817994, 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/JamesConfiguration.java
Removed:
    
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/JamesConfiguration.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/Configurable.java
Modified:
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/POP3BeforeSMTPHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/SetMimeHeaderHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/DNSRBLHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/GreylistHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/MaxRcptHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ResolvableEhloHeloHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SPFHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamAssassinHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamTrapHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/TarpitHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/URIRBLHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptMX.java
    
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidSenderDomainHandler.java

Added: 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/AbstractConfigurableHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/AbstractConfigurableHandler.java?rev=818060&view=auto
==============================================================================
--- 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/AbstractConfigurableHandler.java
 (added)
+++ 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/AbstractConfigurableHandler.java
 Wed Sep 23 11:18:44 2009
@@ -0,0 +1,37 @@
+/****************************************************************
+ * 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.socket.configuration;
+
+
+/**
+ * Abstract base class which the  classname as attribute forthe configuration 
key. This is how the handlers
+ * get configured
+ */
+public abstract class AbstractConfigurableHandler implements Configurable{
+
+       /**
+        * @see 
org.apache.james.socket.configuration.Configurable#getConfigurationKeyXQuery()
+        */
+       public String getConfigurationKeyXQuery() {
+               return "handl...@class='" +getClass().getName()+"']";
+       }
+
+}

Copied: 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/Configurable.java
 (from r812610, 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/Configurable.java)
URL: 
http://svn.apache.org/viewvc/james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/Configurable.java?p2=james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/Configurable.java&p1=james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/Configurable.java&r1=812610&r2=818060&rev=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/Configurable.java
 (original)
+++ 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/Configurable.java
 Wed Sep 23 11:18:44 2009
@@ -18,7 +18,7 @@
  ****************************************************************/
 
 
-package org.apache.james.smtpserver;
+package org.apache.james.socket.configuration;
 
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
@@ -36,4 +36,11 @@
         * @throws ConfigurationException
         */
        public void configure(Configuration config) throws 
ConfigurationException;
+       
+       /**
+        * Return the Key XQuery  for the configuration sub note to use. If the 
full configuration should get inject just return null
+        * 
+        * @return configQuery
+        */
+       public String getConfigurationKeyXQuery();
 }

Copied: 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/JamesConfiguration.java
 (from r817994, 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/JamesConfiguration.java)
URL: 
http://svn.apache.org/viewvc/james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/JamesConfiguration.java?p2=james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/JamesConfiguration.java&p1=james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/JamesConfiguration.java&r1=817994&r2=818060&rev=818060&view=diff
==============================================================================
--- 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/JamesConfiguration.java
 (original)
+++ 
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/configuration/JamesConfiguration.java
 Wed Sep 23 11:18:44 2009
@@ -18,7 +18,7 @@
  ****************************************************************/
 
 
-package org.apache.james.socket;
+package org.apache.james.socket.configuration;
 
 import java.io.ByteArrayInputStream;
 import org.apache.avalon.framework.configuration.ConfigurationUtil;

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java
 Wed Sep 23 11:18:44 2009
@@ -39,8 +39,8 @@
 import org.apache.james.smtpserver.core.CoreCmdHandlerLoader;
 import org.apache.james.smtpserver.core.CoreMessageHookLoader;
 import org.apache.james.smtpserver.core.DataLineMessageHookHandler;
-import org.apache.james.socket.JamesConfiguration;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.JamesConfiguration;
 
 /**
   * The SMTPHandlerChain is per service object providing access
@@ -213,11 +213,16 @@
         }
 
         // configure the handler
-        if (handler instanceof org.apache.james.smtpserver.Configurable) {
-               // Inject only the configuration part which is necessary for 
the handler
-               // we use xquery to get this, maybe the query should get 
tweaked for better perfomance..
-               org.apache.commons.configuration.Configuration handlerConf = 
commonsConf.configurationAt("//handl...@class='" +className+"']");
-               ((org.apache.james.smtpserver.Configurable) 
handler).configure(handlerConf);
+        if (handler instanceof 
org.apache.james.socket.configuration.Configurable) {
+               org.apache.james.socket.configuration.Configurable 
configurableHandler = (org.apache.james.socket.configuration.Configurable) 
handler;
+               String query  = configurableHandler.getConfigurationKeyXQuery();
+               org.apache.commons.configuration.Configuration handlerConf;
+               if (query != null) {
+                       handlerConf = commonsConf.configurationAt(query);
+               } else {
+                       handlerConf = commonsConf;
+               }
+               configurableHandler.configure(handlerConf);
         }
 
         // if it is a commands handler add it to the map with key as command

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/POP3BeforeSMTPHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/POP3BeforeSMTPHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/POP3BeforeSMTPHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/POP3BeforeSMTPHandler.java
 Wed Sep 23 11:18:44 2009
@@ -22,16 +22,16 @@
 
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.ConnectHandler;
 import org.apache.james.smtpserver.SMTPSession;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.james.util.POP3BeforeSMTPHelper;
 import org.apache.james.util.TimeConverter;
 
 /**
  * This ConnectHandler can be used to activate pop-before-smtp
  */
-public class POP3BeforeSMTPHandler implements ConnectHandler, Configurable {
+public class POP3BeforeSMTPHandler extends AbstractConfigurableHandler 
implements ConnectHandler {
 
     /**
      * The time after which ipAddresses should be handled as expired
@@ -39,6 +39,9 @@
     private long expireTime = POP3BeforeSMTPHelper.EXPIRE_TIME;
 
 
+    /**
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
+     */
     public void configure(Configuration config) throws ConfigurationException {
         try {
             setExpireTime(config.getString("expireTime",null));

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/SetMimeHeaderHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/SetMimeHeaderHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/SetMimeHeaderHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/SetMimeHeaderHandler.java
 Wed Sep 23 11:18:44 2009
@@ -25,18 +25,18 @@
 
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.MessageHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.Mail;
 
 
 /**
   * Adds the header to the message
   */
-public class SetMimeHeaderHandler implements MessageHook, Configurable {
+public class SetMimeHeaderHandler extends AbstractConfigurableHandler 
implements MessageHook {
 
     /**
      * The header name and value that needs to be added
@@ -45,6 +45,9 @@
     private String headerValue;
 
 
+    /**
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
+     */
     public void configure(Configuration handlerConfiguration) throws 
ConfigurationException {
        setHeaderName(handlerConfiguration.getString("headername"));
        setHeaderValue(handlerConfiguration.getString("headervalue"));

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/DNSRBLHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/DNSRBLHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/DNSRBLHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/DNSRBLHandler.java
 Wed Sep 23 11:18:44 2009
@@ -34,19 +34,19 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.ConnectHandler;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
 /**
   * Connect handler for DNSRBL processing
   */
-public class DNSRBLHandler implements LogEnabled, ConnectHandler, RcptHook, 
Configurable {
+public class DNSRBLHandler extends AbstractConfigurableHandler implements 
LogEnabled, ConnectHandler, RcptHook {
     
     /** This log is the fall back shared by all instances */
     private static final Log FALLBACK_LOG = 
LogFactory.getLog(DNSRBLHandler.class);

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/GreylistHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/GreylistHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/GreylistHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/GreylistHandler.java
 Wed Sep 23 11:18:44 2009
@@ -46,13 +46,13 @@
 import org.apache.james.api.dnsservice.util.NetMatcher;
 import org.apache.james.dsn.DSNStatus;
 import org.apache.james.services.FileSystem;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.james.util.TimeConverter;
 import org.apache.james.util.sql.JDBCUtil;
 import org.apache.james.util.sql.SqlResources;
@@ -61,7 +61,7 @@
 /**
  * GreylistHandler which can be used to activate Greylisting
  */
-public class GreylistHandler implements LogEnabled, RcptHook, Configurable, 
Initializable {
+public class GreylistHandler extends AbstractConfigurableHandler implements 
LogEnabled, RcptHook, Initializable {
 
     /** This log is the fall back shared by all instances */
     private static final Log FALLBACK_LOG = 
LogFactory.getLog(GreylistHandler.class);

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/MaxRcptHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/MaxRcptHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/MaxRcptHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/MaxRcptHandler.java
 Wed Sep 23 11:18:44 2009
@@ -25,15 +25,15 @@
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
-public class MaxRcptHandler implements RcptHook, Configurable {
+public class MaxRcptHandler extends AbstractConfigurableHandler implements 
RcptHook {
 
     private int maxRcpt = 0;
 

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ResolvableEhloHeloHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ResolvableEhloHeloHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ResolvableEhloHeloHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ResolvableEhloHeloHandler.java
 Wed Sep 23 11:18:44 2009
@@ -27,20 +27,20 @@
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HeloHook;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
 
 /**
  * This CommandHandler can be used to reject not resolvable EHLO/HELO
  */
-public class ResolvableEhloHeloHandler implements Configurable, RcptHook, 
HeloHook {
+public class ResolvableEhloHeloHandler extends AbstractConfigurableHandler 
implements RcptHook, HeloHook {
 
     public final static String BAD_EHLO_HELO = "BAD_EHLO_HELO";
 
@@ -68,7 +68,7 @@
 
     /**
      * (non-Javadoc)
-     * @see 
org.apache.james.smtpserver.Configurable#configure(org.apache.commons.configuration.Configuration)
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
      */
     public void configure(Configuration handlerConfiguration)
             throws ConfigurationException {

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SPFHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SPFHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SPFHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SPFHandler.java
 Wed Sep 23 11:18:44 2009
@@ -31,7 +31,6 @@
 import org.apache.james.jspf.executor.SPFResult;
 import org.apache.james.jspf.impl.DefaultSPF;
 import org.apache.james.jspf.impl.SPF;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
@@ -40,6 +39,7 @@
 import org.apache.james.smtpserver.hook.MessageHook;
 import org.apache.james.smtpserver.hook.RcptHook;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.Mail;
 import org.apache.mailet.MailAddress;
 
@@ -55,7 +55,7 @@
  * <checkAuthNetworks>false&lt/checkAuthNetworks> 
  * </handler>
  */
-public class SPFHandler implements LogEnabled, MailHook, RcptHook, 
MessageHook, Configurable {
+public class SPFHandler extends AbstractConfigurableHandler implements 
LogEnabled, MailHook, RcptHook, MessageHook {
     
     /** This log is the fall back shared by all instances */
     private static final Log FALLBACK_LOG = 
LogFactory.getLog(SPFHandler.class);
@@ -95,7 +95,7 @@
     }
 
     /**
-     * @see 
org.apache.james.smtpserver.Configurable#configure(org.apache.commons.configuration.Configuration)
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
      */
     public void configure(Configuration handlerConfiguration)
             throws ConfigurationException {

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamAssassinHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamAssassinHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamAssassinHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamAssassinHandler.java
 Wed Sep 23 11:18:44 2009
@@ -28,11 +28,11 @@
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.MessageHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.james.util.scanner.SpamAssassinInvoker;
 import org.apache.mailet.Mail;
 
@@ -52,7 +52,7 @@
  * <spamdRejectionHits>15.0</spamdRejectionHits>
  * <checkAuthNetworks>false</checkAuthNetworks> </handler>
  */
-public class SpamAssassinHandler implements MessageHook, Configurable {
+public class SpamAssassinHandler extends AbstractConfigurableHandler 
implements MessageHook {
 
     /**
      * The port spamd is listen on
@@ -72,7 +72,7 @@
     private boolean checkAuthNetworks = false;
 
     /**
-     * @see 
org.apache.james.smtpserver.Configurable#configure(org.apache.commons.configuration.Configuration)
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
      */
     public void configure(Configuration config) throws ConfigurationException {
         setSpamdHost(config.getString("spamdHost","localhost"));

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamTrapHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamTrapHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamTrapHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/SpamTrapHandler.java
 Wed Sep 23 11:18:44 2009
@@ -28,18 +28,18 @@
 
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
 /**
  * This handler can be used for providing a spam trap. IPAddresses which send 
emails to the configured
  * recipients will get blacklisted for the configured time.
  */
-public class SpamTrapHandler implements RcptHook,Configurable{
+public class SpamTrapHandler extends AbstractConfigurableHandler implements 
RcptHook {
 
     /** Map which hold blockedIps and blockTime in memory */
     private Map<String,Long> blockedIps = new HashMap<String,Long>();

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/TarpitHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/TarpitHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/TarpitHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/TarpitHandler.java
 Wed Sep 23 11:18:44 2009
@@ -24,18 +24,18 @@
 
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
 /**
  * Add tarpit support to SMTPServer. See 
http://www.palomine.net/qmail/tarpit.html for more information
  *
  */
-public class TarpitHandler implements RcptHook, Configurable {
+public class TarpitHandler extends AbstractConfigurableHandler implements 
RcptHook {
 
     private int tarpitRcptCount = 0;
 

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/URIRBLHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/URIRBLHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/URIRBLHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/URIRBLHandler.java
 Wed Sep 23 11:18:44 2009
@@ -42,18 +42,18 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.MessageHook;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.Mail;
 
 /**
  * Extract domains from message and check against URIRBLServer. For more 
informations see http://www.surbl.org
  */
-public class URIRBLHandler implements LogEnabled, MessageHook, Configurable {
+public class URIRBLHandler extends AbstractConfigurableHandler implements 
LogEnabled, MessageHook {
 
     /** This log is the fall back shared by all instances */
     private static final Log FALLBACK_LOG = 
LogFactory.getLog(URIRBLHandler.class);
@@ -102,7 +102,7 @@
 
     
     /**
-     * @see 
org.apache.james.smtpserver.Configurable#configure(org.apache.commons.configuration.Configuration)
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
      */
     public void configure(Configuration config) throws ConfigurationException {
         String[] servers = config.getStringArray("uriRblServers/server");

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java
 Wed Sep 23 11:18:44 2009
@@ -37,7 +37,6 @@
 import org.apache.james.api.vut.VirtualUserTable;
 import org.apache.james.api.vut.VirtualUserTableStore;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPResponse;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
@@ -45,6 +44,7 @@
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 import org.apache.oro.text.regex.MalformedPatternException;
 import org.apache.oro.text.regex.Pattern;
@@ -54,7 +54,7 @@
 /**
  * Handler which reject invalid recipients
  */
-public class ValidRcptHandler implements LogEnabled, RcptHook, Configurable {
+public class ValidRcptHandler extends AbstractConfigurableHandler implements 
LogEnabled, RcptHook {
     
 
     /** This log is the fall back shared by all instances */

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptMX.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptMX.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptMX.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptMX.java
 Wed Sep 23 11:18:44 2009
@@ -35,20 +35,20 @@
 import org.apache.james.api.dnsservice.TemporaryResolutionException;
 import org.apache.james.api.dnsservice.util.NetMatcher;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.RcptHook;
 import org.apache.james.socket.LogEnabled;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
 /**
  * This class can be used to reject email with bogus MX which is send from a 
authorized user or an authorized
  * network.
  */
-public class ValidRcptMX implements LogEnabled, RcptHook, Configurable {
+public class ValidRcptMX extends AbstractConfigurableHandler implements 
LogEnabled, RcptHook {
 
     /** This log is the fall back shared by all instances */
     private static final Log FALLBACK_LOG = 
LogFactory.getLog(ValidRcptMX.class);
@@ -90,7 +90,7 @@
     }
     
     /**
-     * @see 
org.apache.james.smtpserver.Configurable#configure(org.apache.commons.configuration.Configuration)
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
      */
     @SuppressWarnings("unchecked")
        public void configure(Configuration config) throws 
ConfigurationException {

Modified: 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidSenderDomainHandler.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidSenderDomainHandler.java?rev=818060&r1=818059&r2=818060&view=diff
==============================================================================
--- 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidSenderDomainHandler.java
 (original)
+++ 
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidSenderDomainHandler.java
 Wed Sep 23 11:18:44 2009
@@ -27,19 +27,19 @@
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.api.dnsservice.TemporaryResolutionException;
 import org.apache.james.dsn.DSNStatus;
-import org.apache.james.smtpserver.Configurable;
 import org.apache.james.smtpserver.SMTPRetCode;
 import org.apache.james.smtpserver.SMTPSession;
 import org.apache.james.smtpserver.hook.HookResult;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.smtpserver.hook.MailHook;
+import org.apache.james.socket.configuration.AbstractConfigurableHandler;
 import org.apache.mailet.MailAddress;
 
 /**
  * Add MFDNSCheck feature to SMTPServer. This handler reject mail from domains 
which have not an an valid MX record.  
  * 
  */
-public class ValidSenderDomainHandler implements MailHook, Configurable {
+public class ValidSenderDomainHandler extends AbstractConfigurableHandler 
implements MailHook {
     
     private boolean checkAuthNetworks = false;
     private DNSService dnsService = null;
@@ -63,7 +63,7 @@
     
     
     /**
-     * @see 
org.apache.james.smtpserver.Configurable#configure(org.apache.commons.configuration.Configuration)
+     * @see 
org.apache.james.socket.configuration.Configurable#configure(org.apache.commons.configuration.Configuration)
      */
     public void configure(Configuration handlerConfiguration) throws 
ConfigurationException {
        
setCheckAuthNetworks(handlerConfiguration.getBoolean("checkAuthNetworks",false));



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to