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 2010/01/06 13:10:49 UTC

svn commit: r896414 [2/4] - in /james/server/trunk: ./ avalon-guice-bridge-api/ avalon-socket-library/ avalon-socket-library/src/main/java/org/apache/james/socket/ avalon-socket-library/src/main/resources/org/ avalon-spring-bridge-library/ avalon-user-...

Modified: james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MBoxMailRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MBoxMailRepository.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MBoxMailRepository.java (original)
+++ james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MBoxMailRepository.java Wed Jan  6 12:10:36 2010
@@ -51,6 +51,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.MailRepository;
 import org.apache.mailet.Mail;
 import org.apache.oro.text.regex.MalformedPatternException;
@@ -111,7 +113,7 @@
  */
 
 
-public class MBoxMailRepository implements MailRepository {
+public class MBoxMailRepository implements MailRepository, LogEnabled, Configurable {
 
 
     static final SimpleDateFormat dy = new SimpleDateFormat("EE MMM dd HH:mm:ss yyyy", Locale.US);
@@ -161,14 +163,36 @@
     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) {
+    public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{
         this.configuration = configuration;
+        String destination;
+        this.mList = null;
+        BUFFERING = configuration.getBoolean("[@BUFFERING]", true);
+        fifo = configuration.getBoolean("[@FIFO]", false);
+        destination = configuration.getString("[@destinationURL]");
+        if (destination.charAt(destination.length() - 1) == '/') {
+            // Remove the trailing / as well as the protocol marker
+            mboxFile = destination.substring("mbox://".length(), destination.lastIndexOf("/"));
+        } else {
+            mboxFile = destination.substring("mbox://".length());
+        }
+
+        if (getLogger().isDebugEnabled()) {
+            getLogger().debug("MBoxMailRepository.destinationURL: " + destination);
+        }
+
+        String checkType = configuration.getString("[@type]");
+        if (!(checkType.equals("MAIL") || checkType.equals("SPOOL"))) {
+            String exceptionString = "Attempt to configure MboxMailRepository as " + checkType;
+            if (getLogger().isWarnEnabled()) {
+                getLogger().warn(exceptionString);
+            }
+            throw new ConfigurationException(exceptionString);
+        }
     }
 
     protected Log getLogger() {
@@ -798,39 +822,4 @@
     public boolean unlock(String key) {
         return false;
     }
-
-    /**
-     * @see org.apache.avalon.framework.configuration.Configurable#configure(Configuration)
-     */
-    protected void configure(HierarchicalConfiguration conf) throws ConfigurationException {
-        String destination;
-        this.mList = null;
-        BUFFERING = conf.getBoolean("[@BUFFERING]", true);
-        fifo = conf.getBoolean("[@FIFO]", false);
-        destination = conf.getString("[@destinationURL]");
-        if (destination.charAt(destination.length() - 1) == '/') {
-            // Remove the trailing / as well as the protocol marker
-            mboxFile = destination.substring("mbox://".length(), destination.lastIndexOf("/"));
-        } else {
-            mboxFile = destination.substring("mbox://".length());
-        }
-
-        if (getLogger().isDebugEnabled()) {
-            getLogger().debug("MBoxMailRepository.destinationURL: " + destination);
-        }
-
-        String checkType = conf.getString("[@type]");
-        if (!(checkType.equals("MAIL") || checkType.equals("SPOOL"))) {
-            String exceptionString = "Attempt to configure MboxMailRepository as " + checkType;
-            if (getLogger().isWarnEnabled()) {
-                getLogger().warn(exceptionString);
-            }
-            throw new ConfigurationException(exceptionString);
-        }
-    }
-
-    @PostConstruct
-    public void init() throws Exception {
-        configure(configuration);
-    }
 }

Modified: james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MailStoreSpoolRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MailStoreSpoolRepository.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MailStoreSpoolRepository.java (original)
+++ james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/MailStoreSpoolRepository.java Wed Jan  6 12:10:36 2010
@@ -22,8 +22,11 @@
 package org.apache.james.mailrepository;
 
 import org.apache.avalon.cornerstone.services.store.Store;
+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.services.SpoolRepository;
 import org.apache.mailet.Mail;
 
@@ -46,7 +49,7 @@
  *
  * @version This is $Revision: 165416 $
  */
-public class MailStoreSpoolRepository implements SpoolRepository {
+public class MailStoreSpoolRepository implements SpoolRepository, LogEnabled, Configurable {
 
     /**
      * The wrapped spoolRepository
@@ -66,13 +69,11 @@
     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) {
+    public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{
         this.configuration = configuration;
     }
     

Modified: james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/javamail/AbstractJavamailStoreMailRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/javamail/AbstractJavamailStoreMailRepository.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/javamail/AbstractJavamailStoreMailRepository.java (original)
+++ james/server/trunk/core-function/src/main/java/org/apache/james/mailrepository/javamail/AbstractJavamailStoreMailRepository.java Wed Jan  6 12:10:36 2010
@@ -39,6 +39,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.services.FileSystem;
 import org.apache.james.services.MailRepository;
 import org.apache.mailet.Mail;
@@ -51,7 +53,7 @@
  * TODO examine for thread-safety
  */
 
-public abstract class AbstractJavamailStoreMailRepository implements MailRepository, StoreGateKeeperAware, FolderAdapterFactory {
+public abstract class AbstractJavamailStoreMailRepository implements MailRepository, StoreGateKeeperAware, FolderAdapterFactory, LogEnabled, Configurable {
 
     /**
      * Whether 'deep debugging' is turned on.
@@ -113,8 +115,7 @@
     }
     
     
-    @Resource(name="org.apache.commons.logging.Log")
-    public void setLogger(Log logger) {
+    public void setLog(Log logger) {
         this.logger = logger;
     }
     
@@ -122,26 +123,16 @@
         return logger;
     }
       
-    @Resource(name="org.apache.commons.configuration.Configuration")
-    public void setConfiguration(HierarchicalConfiguration configuration) {
+    public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{
         this.configuration = configuration;
-    }
-    
-    
-    /**
-     * builds destination from attributes destinationURL and postfix.
-     * at the moment james does not hand over additional parameters like postfix.
-     * 
-     * 
-     */
-    protected void doConfigure(HierarchicalConfiguration conf) throws ConfigurationException {
+        
         log.debug("JavamailStoreMailRepository configure");
-        destination = conf.getString("[@destinationURL]");
+        destination = configuration.getString("[@destinationURL]");
         log.debug("JavamailStoreMailRepository.destinationURL: " + destination);
         if (!destination.endsWith("/")) {
             destination += "/";
         }
-        String postfix = conf.getString("[@postfix]", "");
+        String postfix = configuration.getString("[@postfix]", "");
         if (postfix.length() > 0) {
             if (postfix.startsWith("/")) {
                 postfix = postfix.substring(1);
@@ -195,7 +186,7 @@
                     + destination, e);
         }
 
-        String checkType = conf.getString("[@type]");
+        String checkType = configuration.getString("[@type]");
         if (!checkType.equals(TYPE)) {
             String exceptionString = "Attempt to configure JavaMailStoreMailRepository as "
                     + checkType;
@@ -203,13 +194,25 @@
             throw new ConfigurationException(exceptionString);
         }
         log.debug("JavaMailStoreMailRepository configured");
+        
+        doConfigure(configuration);
+    }
+    
+    
+    /**
+     * builds destination from attributes destinationURL and postfix.
+     * at the moment james does not hand over additional parameters like postfix.
+     * 
+     * 
+     */
+    protected void doConfigure(HierarchicalConfiguration conf) throws ConfigurationException {
+      
     }
 
     @PostConstruct
     public void init() throws Exception {
         log.debug("JavaMailStoreMailRepository initialized");
         
-        doConfigure(configuration);
         try {
             home = fileSystem.getBasedir();
         } catch (FileNotFoundException e) {

Modified: james/server/trunk/core-function/src/test/java/org/apache/james/dnsserver/DNSServerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/test/java/org/apache/james/dnsserver/DNSServerTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/test/java/org/apache/james/dnsserver/DNSServerTest.java (original)
+++ james/server/trunk/core-function/src/test/java/org/apache/james/dnsserver/DNSServerTest.java Wed Jan  6 12:10:36 2010
@@ -111,8 +111,8 @@
         DefaultConfigurationBuilder db = new DefaultConfigurationBuilder();
 
         db.load(new ByteArrayInputStream("<dnsserver><autodiscover>true</autodiscover><authoritative>false</authoritative></dnsserver>".getBytes()));
-        dnsServer.setLogger(new SimpleLog("MockLog"));
-        dnsServer.setConfiguration(db);
+        dnsServer.setLog(new SimpleLog("MockLog"));
+        dnsServer.configure(db);
         dnsServer.init();
         
         

Modified: james/server/trunk/core-function/src/test/java/org/apache/james/domain/JDBCDomainListTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/test/java/org/apache/james/domain/JDBCDomainListTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/test/java/org/apache/james/domain/JDBCDomainListTest.java (original)
+++ james/server/trunk/core-function/src/test/java/org/apache/james/domain/JDBCDomainListTest.java Wed Jan  6 12:10:36 2010
@@ -124,8 +124,8 @@
         dom.setDNSService(setUpDNSServer("localhost"));
         dom.setFileSystem(new MockFileSystem());
         dom.setDataSourceSelector(dataSource);
-        dom.setConfiguration(setUpConfiguration(repos + table));
-        dom.setLogger(new SimpleLog("MockLog"));
+        dom.setLog(new SimpleLog("MockLog"));
+        dom.configure(setUpConfiguration(repos + table));
         dom.init();
         dom.addDomain("domain1.");
 
@@ -143,8 +143,8 @@
         dom.setDNSService(setUpDNSServer("localhost"));
         dom.setFileSystem(new MockFileSystem());
         dom.setDataSourceSelector(dataSource);
-        dom.setConfiguration(new DefaultConfigurationBuilder());
-        dom.setLogger(new SimpleLog("MockLog"));
+        dom.setLog(new SimpleLog("MockLog"));
+        dom.configure(new DefaultConfigurationBuilder());
         try {
             dom.init();
         } catch (ConfigurationException e) {

Modified: james/server/trunk/core-function/src/test/java/org/apache/james/domain/XMLDomainListTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/test/java/org/apache/james/domain/XMLDomainListTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/test/java/org/apache/james/domain/XMLDomainListTest.java (original)
+++ james/server/trunk/core-function/src/test/java/org/apache/james/domain/XMLDomainListTest.java Wed Jan  6 12:10:36 2010
@@ -71,11 +71,10 @@
         domains.add("domain2.");
     
         XMLDomainList dom = new XMLDomainList();
-        dom.setLogger(new SimpleLog("MockLog"));
+        dom.setLog(new SimpleLog("MockLog"));
+        dom.configure(setUpConfiguration(false,false,domains));
         dom.setDNSService(setUpDNSServer("localhost"));
-        dom.setConfiguration(setUpConfiguration(false,false,domains));
-        dom.init();
-
+        
         assertTrue("Two domain found",dom.getDomains().size() ==2);
     }
     
@@ -84,10 +83,10 @@
         domains.add("domain1.");
     
         XMLDomainList dom = new XMLDomainList();
-        dom.setLogger(new SimpleLog("MockLog"));
+        dom.setLog(new SimpleLog("MockLog"));
+        dom.configure(setUpConfiguration(true,false,domains));
+
         dom.setDNSService(setUpDNSServer("local"));
-        dom.setConfiguration(setUpConfiguration(true,false,domains));
-        dom.init();
         assertEquals("Two domains found",dom.getDomains().size(), 2);
     }
     
@@ -96,10 +95,10 @@
         domains.add("domain1.");
     
         XMLDomainList dom = new XMLDomainList();
-        dom.setLogger(new SimpleLog("MockLog"));
+        dom.setLog(new SimpleLog("MockLog"));
+        dom.configure(setUpConfiguration(true,false,domains));
+
         dom.setDNSService(setUpDNSServer("localhost"));
-        dom.setConfiguration(setUpConfiguration(true,false,domains));
-        dom.init();
         
         assertEquals("One domain found",dom.getDomains().size(), 1);
     }

Modified: james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/FileMailRepositoryTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/FileMailRepositoryTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/FileMailRepositoryTest.java (original)
+++ james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/FileMailRepositoryTest.java Wed Jan  6 12:10:36 2010
@@ -44,29 +44,29 @@
         MockStore mockStore = new MockStore();
         File_Persistent_Stream_Repository file_Persistent_Stream_Repository = new File_Persistent_Stream_Repository();
         file_Persistent_Stream_Repository.setFileSystem(fs);
-        file_Persistent_Stream_Repository.setLogger(new SimpleLog("MockLog"));
+        file_Persistent_Stream_Repository.setLog(new SimpleLog("MockLog"));
         
         DefaultConfigurationBuilder defaultConfiguration2 = new DefaultConfigurationBuilder();
         defaultConfiguration2.addProperty( "[@destinationURL]", "file://target/var/mr");
-        file_Persistent_Stream_Repository.setConfiguration(defaultConfiguration2);
+        file_Persistent_Stream_Repository.configure(defaultConfiguration2);
         file_Persistent_Stream_Repository.init();
         
         mockStore.add("STREAM.mr", file_Persistent_Stream_Repository);
         File_Persistent_Object_Repository file_Persistent_Object_Repository = new File_Persistent_Object_Repository();
         file_Persistent_Object_Repository.setFileSystem(fs);
-        file_Persistent_Object_Repository.setLogger(new SimpleLog("MockLog"));
+        file_Persistent_Object_Repository.setLog(new SimpleLog("MockLog"));
         DefaultConfigurationBuilder defaultConfiguration22 = new DefaultConfigurationBuilder();
         defaultConfiguration22.addProperty( "[@destinationURL]", "file://target/var/mr");
-        file_Persistent_Object_Repository.setConfiguration(defaultConfiguration22);
+        file_Persistent_Object_Repository.configure(defaultConfiguration22);
         file_Persistent_Object_Repository.init();
         mockStore.add("OBJECT.mr", file_Persistent_Object_Repository);
         mr.setStore(mockStore);
 
-        mr.setLogger(new SimpleLog("MockLog"));
+        mr.setLog(new SimpleLog("MockLog"));
         DefaultConfigurationBuilder defaultConfiguration = new DefaultConfigurationBuilder();
         defaultConfiguration.addProperty( "[@destinationURL]","file://target/var/mr");
         defaultConfiguration.addProperty( "[@type]","MAIL");
-        mr.setConfiguration(defaultConfiguration);
+        mr.configure(defaultConfiguration);
         mr.init();
         return mr;
     }

Modified: james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/JDBCMailRepositoryTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/JDBCMailRepositoryTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/JDBCMailRepositoryTest.java (original)
+++ james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/JDBCMailRepositoryTest.java Wed Jan  6 12:10:36 2010
@@ -46,10 +46,10 @@
         MockStore mockStore = new MockStore();
         File_Persistent_Stream_Repository file_Persistent_Stream_Repository = new File_Persistent_Stream_Repository();
         file_Persistent_Stream_Repository.setFileSystem(fs);
-        file_Persistent_Stream_Repository.setLogger(new SimpleLog("MockLog"));
+        file_Persistent_Stream_Repository.setLog(new SimpleLog("MockLog"));
         DefaultConfigurationBuilder defaultConfiguration2 = new DefaultConfigurationBuilder();
         defaultConfiguration2.addProperty("[@destinationURL]", "file://target/var/mr/testrepo");
-        file_Persistent_Stream_Repository.setConfiguration(defaultConfiguration2);
+        file_Persistent_Stream_Repository.configure(defaultConfiguration2);
         file_Persistent_Stream_Repository.init();
         mockStore.add("STREAM.mr", file_Persistent_Stream_Repository);
         
@@ -60,8 +60,8 @@
         mr.setFileSystem(fs);
         mr.setStore(mockStore);
         mr.setDatasources(selector);
-        mr.setLogger(new SimpleLog("MockLog"));
-        mr.setConfiguration(defaultConfiguration);
+        mr.setLog(new SimpleLog("MockLog"));
+        mr.configure(defaultConfiguration);
         mr.init();
         return mr;
     }

Modified: james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/MBoxMailRepositoryTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/MBoxMailRepositoryTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/MBoxMailRepositoryTest.java (original)
+++ james/server/trunk/core-function/src/test/java/org/apache/james/mailrepository/MBoxMailRepositoryTest.java Wed Jan  6 12:10:36 2010
@@ -50,9 +50,9 @@
         
         defaultConfiguration.addProperty("[@destinationURL]",mboxPath);
         defaultConfiguration.addProperty("[@type]","MAIL");
-        mr.setConfiguration(defaultConfiguration);
-        mr.setLogger(new SimpleLog("MockLog"));;
-        mr.init();
+        mr.setLog(new SimpleLog("MockLog"));;
+        mr.configure(defaultConfiguration);
+
         return mr;
     }
 

Modified: james/server/trunk/core-library/src/main/java/org/apache/james/Constants.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/Constants.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-library/src/main/java/org/apache/james/Constants.java (original)
+++ james/server/trunk/core-library/src/main/java/org/apache/james/Constants.java Wed Jan  6 12:10:36 2010
@@ -53,13 +53,6 @@
     public static final String HELLO_NAME = "HELLO_NAME";
 
     /**
-     * Key used to store the component manager for
-     * this James instance in a way accessible by
-     * Avalon aware Mailets.
-     */
-    public static final String AVALON_COMPONENT_MANAGER = "AVALON_COMP_MGR";
-    
-    /**
      * Key used to store the hostaddress of the localhost
      */
     public static final String HOSTADDRESS = "LOCAL_HOSTADDRESS";

Modified: james/server/trunk/core-library/src/main/java/org/apache/james/mailrepository/filepair/AbstractFileRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/mailrepository/filepair/AbstractFileRepository.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/core-library/src/main/java/org/apache/james/mailrepository/filepair/AbstractFileRepository.java (original)
+++ james/server/trunk/core-library/src/main/java/org/apache/james/mailrepository/filepair/AbstractFileRepository.java Wed Jan  6 12:10:36 2010
@@ -26,6 +26,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.services.FileSystem;
 import org.apache.james.util.io.ExtensionFileFilter;
 
@@ -49,7 +51,7 @@
  *
  */
 public abstract class AbstractFileRepository
-    implements Repository {
+    implements Repository, Configurable, LogEnabled {
     protected static final boolean DEBUG = false;
 
     protected static final String HANDLED_URL = "file://";
@@ -69,13 +71,13 @@
     private FileSystem fileSystem;
 
     private Log logger;
-
-    private HierarchicalConfiguration configuration;
-
     
-    @Resource(name="org.apache.commons.configuration.Configuration")
-    public void setConfiguration(HierarchicalConfiguration configuration) {
-        this.configuration = configuration;
+    public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{        
+        if( null == m_destination )
+        {
+            final String destination = configuration.getString( "[@destinationURL]" );
+            setDestination( destination );
+        }
     }
     
     
@@ -85,8 +87,7 @@
     }
     
     
-    @Resource(name="org.apache.commons.logging.Log")
-    public void setLogger(Log logger) {
+    public void setLog(Log logger) {
         this.logger = logger;
     }
     
@@ -98,39 +99,51 @@
     protected abstract String getExtensionDecorator();
 
 
-
-    protected void doConfigure( final HierarchicalConfiguration configuration )
-        throws ConfigurationException
-    {
-        if( null == m_destination )
-        {
-            final String destination = configuration.getString( "[@destinationURL]" );
-            setDestination( destination );
-        }
-    }
-
     @PostConstruct
     public void init()
         throws Exception
     {
         getLogger().info( "Init " + getClass().getName() + " Store" );
 
-        doConfigure(configuration);
         try {
             m_baseDirectory = fileSystem.getBasedir();
         } catch (FileNotFoundException e) {
             getLogger().error("Cannot find the base directory of the application",e);
-            throw new FileNotFoundException("Cannot find the base directory of the application");
+            throw new ConfigurationException("Cannot find the base directory of the application");
         }
         
+        File directory;
+
+        // Check for absolute path
+        if( m_path.startsWith( "/" ) )
+        {
+            directory = new File( m_path );
+        }
+        else
+        {
+            directory = new File( m_baseDirectory, m_path );
+        }
+
+        try
+        {
+            directory = directory.getCanonicalFile();
+        }
+        catch( final IOException ioe )
+        {
+            throw new ConfigurationException( "Unable to form canonical representation of " +
+                                              directory );
+        }
 
+        m_path = directory.toString();
+
+        
+       
         m_name = "Repository";
         String m_postfix = getExtensionDecorator();
         m_extension = "." + m_name + m_postfix;
         m_filter = new ExtensionFileFilter(m_extension);
         //m_filter = new NumberedRepositoryFileFilter(getExtensionDecorator());
 
-        final File directory = new File( m_path );
         directory.mkdirs();
 
         getLogger().info( getClass().getName() + " opened in " + m_path );
@@ -184,33 +197,10 @@
             throw new ConfigurationException( "cannot handle destination " + destination );
         }
 
+        
         m_path = destination.substring( HANDLED_URL.length() );
-
-        File directory;
-
-        // Check for absolute path
-        if( m_path.startsWith( "/" ) )
-        {
-            directory = new File( m_path );
-        }
-        else
-        {
-            directory = new File( m_baseDirectory, m_path );
-        }
-
-        try
-        {
-            directory = directory.getCanonicalFile();
-        }
-        catch( final IOException ioe )
-        {
-            throw new ConfigurationException( "Unable to form canonical representation of " +
-                                              directory );
-        }
-
-        m_path = directory.toString();
-
         m_destination = destination;
+
     }
 
     /**
@@ -243,7 +233,7 @@
         }
 
         child.setFileSystem(fileSystem);
-        child.setLogger(logger);
+        child.setLog(logger);
 
         try
         {

Modified: james/server/trunk/fetchmail-function/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/fetchmail-function/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/fetchmail-function/pom.xml (original)
+++ james/server/trunk/fetchmail-function/pom.xml Wed Jan  6 12:10:36 2010
@@ -72,22 +72,5 @@
       <groupId>commons-configuration</groupId>
       <artifactId>commons-configuration</artifactId>
     </dependency>
-    <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-    </dependency>
   </dependencies>
 </project>
\ No newline at end of file

Modified: james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchMail.java
URL: http://svn.apache.org/viewvc/james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchMail.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchMail.java (original)
+++ james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchMail.java Wed Jan  6 12:10:36 2010
@@ -41,6 +41,8 @@
 import org.apache.commons.logging.Log;
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.api.user.UsersRepository;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
 import org.apache.james.services.MailServer;
 
 /**
@@ -72,7 +74,7 @@
  * <p>Creation Date: 24-May-03</p>
  * 
  */
-public class FetchMail implements Target {
+public class FetchMail implements Target, LogEnabled, Configurable {
     /**
      * Key fields for DynamicAccounts.
      */
@@ -422,7 +424,7 @@
      * @see org.apache.avalon.framework.configuration.Configurable#configure(Configuration)
      */
     @SuppressWarnings("unchecked")
-    protected void configure(HierarchicalConfiguration configuration)
+    public void configure(HierarchicalConfiguration configuration)
         throws ConfigurationException
     {
         // Set any Session parameters passed in the Configuration
@@ -493,10 +495,6 @@
         i++;
     }
     
-    @PostConstruct
-    public void init() throws Exception{
-        configure(config);
-    }
 
     /**
      * Method target triggered fetches mail for each configured account.
@@ -677,17 +675,11 @@
         this.fieldLocalUsers = urepos;
     }
 
-    @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;
-    }
-
     /**
      * Returns the accounts. Initializes if required.
      * @return List

Modified: james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchScheduler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchScheduler.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchScheduler.java (original)
+++ james/server/trunk/fetchmail-function/src/main/java/org/apache/james/fetchmail/FetchScheduler.java Wed Jan  6 12:10:36 2010
@@ -31,10 +31,13 @@
 
 import org.apache.avalon.cornerstone.services.scheduler.PeriodicTimeTrigger;
 import org.apache.avalon.cornerstone.services.scheduler.TimeScheduler;
+import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
 import org.apache.commons.logging.Log;
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.api.user.UsersRepository;
+import org.apache.james.lifecycle.Configurable;
+import org.apache.james.lifecycle.LogEnabled;
 import org.apache.james.services.MailServer;
 
 /**
@@ -43,7 +46,7 @@
  * $Id$
  *
  */
-public class FetchScheduler implements FetchSchedulerMBean {
+public class FetchScheduler implements FetchSchedulerMBean, LogEnabled, Configurable {
 
     /**
      * Configuration object for this service
@@ -97,14 +100,12 @@
         this.urepos = urepos;
     }
     
-    @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) {
+    public final void configure(HierarchicalConfiguration config) throws ConfigurationException{
         this.conf = config;
     }
     
@@ -126,11 +127,11 @@
                 Integer interval = new Integer(fetchConf.getInt("interval"));
 
                 FetchMail fetcher = new FetchMail();
-                fetcher.setConfiguration(fetchConf);
+                fetcher.setLog(logger);
+                fetcher.configure(fetchConf);
                 fetcher.setDNSService(dns);
                 fetcher.setMailServer(mailserver);
                 fetcher.setUsersRepository(urepos);
-                fetcher.setLogger(logger);
                 // avalon specific initialization
                // ContainerUtil.enableLogging(fetcher,getLogger().getChildLogger(fetchTaskName));
 

Modified: james/server/trunk/imapserver-function/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/imapserver-function/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/imapserver-function/pom.xml (original)
+++ james/server/trunk/imapserver-function/pom.xml Wed Jan  6 12:10:36 2010
@@ -47,17 +47,14 @@
     </dependency>
     <dependency>
       <groupId>org.apache.james</groupId>
-      <artifactId>james-server-core-library</artifactId>
+      <artifactId>james-server-socket-api</artifactId>
     </dependency>
         
     <dependency>
       <groupId>org.apache.james</groupId>
       <artifactId>apache-mailet</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>apache-jsieve</artifactId>
-    </dependency>
+
     <dependency>
       <groupId>org.apache.james</groupId>
       <artifactId>apache-jsieve-mailet</artifactId>
@@ -69,10 +66,6 @@
     
     <dependency>
       <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-socket-library</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
       <artifactId>james-server-socket-shared-library</artifactId>
     </dependency>
     <dependency>
@@ -103,28 +96,7 @@
       <groupId>org.apache.james</groupId>
       <artifactId>apache-james-imap-seda</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-    </dependency>
-     <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.avalon.framework</groupId>
-      <artifactId>avalon-framework-api</artifactId>
-    </dependency>
-    
+ 
     <dependency>
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>

Propchange: james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapHandler.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/imapserver-function/src/main/java/org/apache/james/imapserver/ImapHandler.java:893986-896410

Modified: james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapServerProtocolHandlerFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapServerProtocolHandlerFactory.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapServerProtocolHandlerFactory.java (original)
+++ james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapServerProtocolHandlerFactory.java Wed Jan  6 12:10:36 2010
@@ -30,7 +30,6 @@
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.james.Constants;
 import org.apache.james.api.user.UsersRepository;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.mailbox.Mailbox;
@@ -53,7 +52,7 @@
  */
 public class ImapServerProtocolHandlerFactory extends AbstractProtocolHandlerFactory implements ImapConstants, Poster
 {
-    private static final String softwaretype = "JAMES "+VERSION+" Server " + Constants.SOFTWARE_VERSION;
+    private static final String softwaretype = "JAMES "+VERSION+" Server "; //+ Constants.SOFTWARE_VERSION;
      
     private ImapFactory factory;
     

Propchange: james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapServerProtocolHandlerFactory.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/imapserver-function/src/main/java/org/apache/james/imapserver/ImapServerProtocolHandlerFactory.java:893986-896410

Propchange: james/server/trunk/imapserver-function/src/main/java/org/apache/james/mailboxmanager/torque/DefaultMailboxManager.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/imapserver-function/src/main/java/org/apache/james/mailboxmanager/torque/DefaultMailboxManager.java:893986-896410

Propchange: james/server/trunk/imapserver-function/src/main/java/org/apache/james/mailboxmanager/torque/DefaultUserManager.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/imapserver-function/src/main/java/org/apache/james/mailboxmanager/torque/DefaultUserManager.java:893986-896410

Propchange: james/server/trunk/imapserver-function/src/main/java/org/apache/james/user/impl/file/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/imapserver-function/src/main/java/org/apache/james/user/impl/file:893986-896410

Propchange: james/server/trunk/imapserver-function/src/test/java/org/apache/james/user/impl/file/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/imapserver-function/src/test/java/org/apache/james/user/impl/file:893986-896410

Modified: james/server/trunk/include.properties
URL: http://svn.apache.org/viewvc/james/server/trunk/include.properties?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/include.properties (original)
+++ james/server/trunk/include.properties Wed Jan  6 12:10:36 2010
@@ -100,9 +100,8 @@
 path.lib.jackrabbit=org.apache.jackrabbit/jars
 path.lib.jcr=javax.jcr/jars
 path.lib.backport-util-concurrent=backport-util-concurrent/jars
-# Spring bridge
+
 path.lib.spring=org.springframework/jars
-path.lib.avalon-phoenix=avalon-phoenix/jars
 path.lib.log4j=log4j/jars
 path.lib.h2=com.h2database/jars
 path.lib.lucene=org.apache.lucene/jars
@@ -110,16 +109,14 @@
 path.lib.serp=net.sourceforge.serp/jars
 path.lib.openjpa=org.apache.openjpa/jars
 path.lib.mina=org.apache.mina/jars
-path.lib.guice=com.google.code.guice/jars
-path.lib.guiceyfruit=org.guiceyfruit/jars
-path.lib.springaopalliance=spring-aopalliance/jars
 
 # ----- Spring -----
-jarname.spring.jar=spring-2.0.jar
-spring.jar=${path.lib.spring}/${jarname.spring.jar}
-
-jarname.avalon-phoenix.jar=avalon-phoenix-client-4.2-SNAPSHOT.jar
-avalon-phoenix.jar=${path.lib.avalon-phoenix}/${jarname.avalon-phoenix.jar}
+jarname.spring-core.jar=spring-core-2.5.6.jar
+spring-core.jar=${path.lib.spring}/${jarname.spring-core.jar}
+jarname.spring-context.jar=spring-context-2.5.6.jar
+spring-context.jar=${path.lib.spring}/${jarname.spring-context.jar}
+jarname.spring-beans.jar=spring-beans-2.5.6.jar
+spring-beans.jar=${path.lib.spring}/${jarname.spring-beans.jar}
 
 jarname.log4j.jar=log4j-1.2.14.jar
 log4j.jar=${path.lib.log4j}/${jarname.log4j.jar}
@@ -368,16 +365,6 @@
 jarname.mina-core.jar=mina-core-2.0.0-RC1.jar
 mina-core.jar=${path.lib.mina}/${jarname.mina-core.jar}
 
-# ------ Guice and Co ------------------
-jarname.guice.jar=guice-2.0.jar
-guice.jar=${path.lib.guice}/${jarname.guice.jar}
-
-jarname.guiceyfruit-core.jar=guiceyfruit-core-2.0.jar
-guiceyfruit-core.jar=${path.lib.guiceyfruit}/${jarname.guiceyfruit-core.jar}
-
-jarname.spring-aopalliance.jar=spring-aopalliance-1.0.jar
-spring-aopalliance.jar=${path.lib.springaopalliance}/${jarname.spring-aopalliance.jar}
-
 
 # --------------------------------------------------
 #                TEST LIBRARIES

Propchange: james/server/trunk/jcr-store/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan  6 12:10:36 2010
@@ -0,0 +1 @@
+/james/server/sandbox/active/pure_spring_deployment/jcr-store:893986-896410

Modified: james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/FromRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/FromRepository.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/FromRepository.java (original)
+++ james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/FromRepository.java Wed Jan  6 12:10:36 2010
@@ -22,15 +22,13 @@
 package org.apache.james.transport.mailets;
 
 import org.apache.avalon.cornerstone.services.store.Store;
-import org.apache.avalon.framework.configuration.DefaultConfiguration;
 import org.apache.avalon.framework.container.ContainerUtil;
-import org.apache.avalon.framework.service.ServiceException;
-import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.james.Constants;
+import org.apache.commons.configuration.DefaultConfigurationBuilder;
 import org.apache.james.services.MailRepository;
 import org.apache.mailet.base.GenericMailet;
 import org.apache.mailet.Mail;
 
+import javax.annotation.Resource;
 import javax.mail.MessagingException;
 
 import java.util.Iterator;
@@ -68,6 +66,13 @@
      */
     private String processor;
 
+	private Store mailStore;
+
+    @Resource(name="mailstore")
+    public void setStore(Store mailStore) {
+    	this.mailStore = mailStore;
+    }
+    
     /**
      * Initialize the mailet, loading configuration information.
      */
@@ -81,16 +86,12 @@
             // Ignore exception, default to false
         }
 
-        ServiceManager compMgr = (ServiceManager)getMailetContext().getAttribute(Constants.AVALON_COMPONENT_MANAGER);
         try {
-            Store mailstore = (Store) compMgr.lookup(Store.ROLE);
-            DefaultConfiguration mailConf
-                = new DefaultConfiguration("repository", "generated:ToRepository");
-            mailConf.setAttribute("destinationURL", repositoryPath);
-            mailConf.setAttribute("type", "MAIL");
-            repository = (MailRepository) mailstore.select(mailConf);
-        } catch (ServiceException cnfe) {
-            log("Failed to retrieve Store component:" + cnfe.getMessage());
+            DefaultConfigurationBuilder mailConf
+                = new DefaultConfigurationBuilder();
+            mailConf.addProperty("[@destinationURL]", repositoryPath);
+            mailConf.addProperty("[@type]", "MAIL");
+            repository = (MailRepository) mailStore.select(mailConf);
         } catch (Exception e) {
             log("Failed to retrieve Store component:" + e.getMessage());
         }

Modified: james/server/trunk/management-library/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/management-library/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/management-library/pom.xml (original)
+++ james/server/trunk/management-library/pom.xml Wed Jan  6 12:10:36 2010
@@ -33,14 +33,6 @@
       <groupId>org.apache.james</groupId>
       <artifactId>apache-mailet</artifactId>
     </dependency>
-    <!-- Probably used for RFC2822Headers                             -->
-    <!-- Not needed at runtime because of compiler inlining constants -->
-    <!-- 
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>apache-mailet-base</artifactId>
-    </dependency>
-     -->
 
     <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
@@ -66,10 +58,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.avalon.framework</groupId>
-      <artifactId>avalon-framework-api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.avalon.framework</groupId>
       <artifactId>avalon-framework-impl</artifactId>
     </dependency>
     <dependency>
@@ -99,23 +87,6 @@
     <dependency>
       <groupId>mx4j</groupId>
       <artifactId>mx4j-jmx</artifactId>
-    </dependency>
-      <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <scope>runtime</scope>
-    </dependency>
+  	</dependency>
   </dependencies>
 </project>

Modified: james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java (original)
+++ james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java Wed Jan  6 12:10:36 2010
@@ -43,6 +43,7 @@
 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.management.BayesianAnalyzerManagementException;
 import org.apache.james.management.BayesianAnalyzerManagementMBean;
 import org.apache.james.management.BayesianAnalyzerManagementService;
@@ -55,7 +56,7 @@
 /**
  * Management for BayesianAnalyzer
  */
-public class BayesianAnalyzerManagement implements BayesianAnalyzerManagementService, BayesianAnalyzerManagementMBean {
+public class BayesianAnalyzerManagement implements BayesianAnalyzerManagementService, BayesianAnalyzerManagementMBean, Configurable {
 
     private final static String HAM = "HAM";
     private final static String SPAM = "SPAM";
@@ -64,8 +65,6 @@
     private String repos;
     private String sqlFileUrl;
     private FileSystem fileSystem;
-    private Log logger;
-    private HierarchicalConfiguration configuration;
     
     /**
      * Sets the file system service
@@ -80,26 +79,14 @@
 
     @PostConstruct
     public void init() throws Exception {
-        configure();
         if (repos != null) {
             setDataSourceComponent((DataSourceComponent) selector.select(repos));
             File sqlFile = fileSystem.getFile(sqlFileUrl);
             analyzer.initSqlQueries(component.getConnection(), sqlFile.getAbsolutePath());
         }
     }
-    
-    @Resource(name="org.apache.commons.logging.Log")
-    public void setLog(Log logger) {
-        this.logger = logger;
-    }
-    
-
-    @Resource(name="org.apache.commons.configuration.Configuration")
-    public void setConfiguration(HierarchicalConfiguration configuration) {
-        this.configuration = configuration;
-    }
 
-    private void configure() throws ConfigurationException {
+    public void configure(HierarchicalConfiguration configuration) throws ConfigurationException{        
         String reposPath = configuration.getString("repositoryPath",null);
         if (reposPath != null) {
             setRepositoryPath(reposPath);

Modified: james/server/trunk/mina-socket-library/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/mina-socket-library/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/mina-socket-library/pom.xml (original)
+++ james/server/trunk/mina-socket-library/pom.xml Wed Jan  6 12:10:36 2010
@@ -34,14 +34,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.james</groupId>
-      <artifactId>james-server-socket-api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-common-util</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
       <artifactId>james-server-domain-api</artifactId>
     </dependency>
     <dependency>
@@ -49,10 +41,6 @@
       <artifactId>james-server-core-api</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.apache.avalon.framework</groupId>
-      <artifactId>avalon-framework-api</artifactId>
-    </dependency>
-    <dependency>
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>
     </dependency>
@@ -60,9 +48,5 @@
       <groupId>commons-configuration</groupId>
       <artifactId>commons-configuration</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.apache.avalon.framework</groupId>
-      <artifactId>avalon-framework-impl</artifactId>
-    </dependency>
   </dependencies>
 </project>
\ No newline at end of file

Modified: james/server/trunk/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java (original)
+++ james/server/trunk/mina-socket-library/src/main/java/org/apache/james/socket/mina/AbstractAsyncServer.java Wed Jan  6 12:10:36 2010
@@ -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/trunk/nntpserver-function/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/nntpserver-function/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/nntpserver-function/pom.xml (original)
+++ james/server/trunk/nntpserver-function/pom.xml Wed Jan  6 12:10:36 2010
@@ -91,23 +91,7 @@
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <scope>runtime</scope>
-    </dependency>
+   
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
@@ -122,12 +106,12 @@
     <dependency>
       <groupId>org.apache.james</groupId>
       <artifactId>james-server-user-library</artifactId>
+      <type>test-jar</type>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.james</groupId>
       <artifactId>james-server-user-library</artifactId>
-      <type>test-jar</type>
       <scope>test</scope>
     </dependency>
     <dependency>

Modified: james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java
URL: http://svn.apache.org/viewvc/james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java (original)
+++ james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPRepositoryImpl.java Wed Jan  6 12:10:36 2010
@@ -24,17 +24,15 @@
 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;
 import org.apache.james.util.io.AndFileFilter;
 import org.apache.james.util.io.DirectoryFileFilter;
 import org.apache.oro.io.GlobFilenameFilter;
-import org.guiceyfruit.jsr250.Jsr250Module;
 
-import com.google.inject.AbstractModule;
-import com.google.inject.Guice;
-import com.google.inject.name.Names;
 
 import java.io.File;
 import java.io.FileOutputStream;
@@ -53,7 +51,7 @@
 /**
  * NNTP Repository implementation.
  */
-public class NNTPRepositoryImpl implements NNTPRepository {
+public class NNTPRepositoryImpl implements NNTPRepository, Configurable, LogEnabled {
 
     /**
      * The configuration employed by this repository
@@ -142,31 +140,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 +179,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 {
@@ -469,54 +458,14 @@
         	className = NNTPSpooler.class.getName();
         }
         try {
-            Class<?> myClass = Thread.currentThread().getContextClassLoader().loadClass(className);
-            Object obj = Guice.createInjector(new Jsr250Module(), new AbstractModule() {
-
-                @Override
-                protected void configure() {
-                    bind(HierarchicalConfiguration.class).annotatedWith(Names.named("org.apache.commons.configuration.Configuration")).toInstance(spoolerConfiguration.configurationAt("configuration"));
-                    bind(Log.class).annotatedWith(Names.named("org.apache.commons.logging.Log")).toInstance(logger);
-                    bind(FileSystem.class).annotatedWith(Names.named("filesystem")).toInstance(fileSystem);
-                    bind(ArticleIDRepository.class).annotatedWith(Names.named("org.apache.james.nntpserver.repository.ArticleIDRepository")).toInstance(articleIDRepo);
-                    bind(NNTPRepository.class).annotatedWith(Names.named("nntp-repository")).toInstance(new NNTPRepository() {
-
-                        public void createArticle(InputStream in) {
-                            NNTPRepositoryImpl.this.createArticle(in);
-                        }
-
-                        public NNTPArticle getArticleFromID(String id) {
-                            return NNTPRepositoryImpl.this.getArticleFromID(id);
-                        }
+            NNTPSpooler obj = (NNTPSpooler) Thread.currentThread().getContextClassLoader().loadClass(className).newInstance();
+            obj.configure(spoolerConfiguration.configurationAt("configuration"));
+            obj.setArticleIDRepository(articleIDRepo);
+            obj.setFileSystem(fileSystem);
+            obj.setLog(logger);
+            obj.init();
 
-                        public Iterator<NNTPArticle> getArticlesSince(Date dt) {
-                            return NNTPRepositoryImpl.this.getArticlesSince(dt);
-                        }
-
-                        public NNTPGroup getGroup(String groupName) {
-                            return NNTPRepositoryImpl.this.getGroup(groupName);
-                        }
-
-                        public Iterator<NNTPGroup> getGroupsSince(Date dt) {
-                            return NNTPRepositoryImpl.this.getGroupsSince(dt);
-                        }
-
-                        public Iterator<NNTPGroup> getMatchedGroups(String wildmat) {
-                            return NNTPRepositoryImpl.this.getMatchedGroups(wildmat);
-                        }
-
-                        public String[] getOverviewFormat() {
-                            return NNTPRepositoryImpl.this.getOverviewFormat();
-                        }
-
-                        public boolean isReadOnly() {
-                            return NNTPRepositoryImpl.this.isReadOnly();
-                        }
-                        
-                    });
-                }
-                
-            }).getInstance(myClass);
-            return (NNTPSpooler)obj;
+            return obj;
         } catch(ClassCastException cce) {
             StringBuffer errorBuffer =
                 new StringBuffer(128)

Modified: james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPSpooler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPSpooler.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPSpooler.java (original)
+++ james/server/trunk/nntpserver-function/src/main/java/org/apache/james/nntpserver/repository/NNTPSpooler.java Wed Jan  6 12:10:36 2010
@@ -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.services.FileSystem;
 import org.apache.james.util.Lock;
 import org.apache.james.util.io.IOUtil;
@@ -45,7 +47,7 @@
  * Eats up inappropriate entries.
  *
  */
-public class NNTPSpooler {
+public class NNTPSpooler implements LogEnabled, Configurable{
 
     private ArticleIDRepository idRepos;
     
@@ -133,7 +135,6 @@
      *
      * @param articleIDRepo the article id repository to be used
      */
-    @Resource(name="org.apache.james.nntpserver.repository.ArticleIDRepository")
     void setArticleIDRepository(ArticleIDRepository idRepos) {
         this.idRepos = idRepos;
     }
@@ -346,12 +347,10 @@
 
     
     
-    @Resource(name="org.apache.commons.configuration.Configuration")
     public void configure(HierarchicalConfiguration config) {
         this.config = config;
     }
 
-    @Resource(name="org.apache.commons.logging.Log")
     public void setLog(Log log) {
         this.logger = log;
     }

Modified: james/server/trunk/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java (original)
+++ james/server/trunk/nntpserver-function/src/test/java/org/apache/james/nntpserver/NNTPServerTest.java Wed Jan  6 12:10:36 2010
@@ -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/trunk/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/pom.xml (original)
+++ james/server/trunk/pom.xml Wed Jan  6 12:10:36 2010
@@ -45,7 +45,6 @@
     <module>core-library</module>
     <module>management-library</module>
     <module>smtp-protocol-library</module>
-    <module>avalon-spring-bridge-library</module>
     <module>avalon-socket-library</module>
     <module>core-function</module>
     <module>imapserver-function</module>
@@ -60,11 +59,9 @@
     <module>fetchmail-function</module>
     <module>experimental-activemq-function</module>
     <module>jcr-store</module>
-    <module>phoenix-deployment</module>
     <module>spring-deployment</module>
     <module>socket-shared-library</module>
     <module>mina-socket-library</module>
-    <module>avalon-guice-bridge-api</module>
   </modules>
   <ciManagement>
     <system>hudson</system>
@@ -111,16 +108,7 @@
             </goals>
           </execution>
         </executions>
-      </plugin>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <configuration>
-          <descriptorRefs>
-            <descriptorRef>bin</descriptorRef>
-            <descriptorRef>src</descriptorRef>
-          </descriptorRefs>
-        </configuration>
-      </plugin>
+      </plugin>     
     </plugins>
   </build>
   <repositories>
@@ -270,11 +258,7 @@
       <artifactId>james-server-socket-shared-library</artifactId>
       <version>3.0-M1</version>
     </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-      <version>3.0-M1</version>
-    </dependency>
+   
     <dependency>
       <groupId>org.apache.james</groupId>
       <artifactId>apache-mailet</artifactId>
@@ -406,11 +390,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-spring-bridge-library</artifactId>
-      <version>3.0-M1</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
       <artifactId>james-server-avalon-socket-library</artifactId>
       <version>3.0-M1</version>
     </dependency>
@@ -561,12 +540,6 @@
     </dependency>
 
     <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-phoenix-deployment</artifactId>
-      <version>3.0-M1</version>
-    </dependency>
-
-    <dependency>
       <groupId>org.bouncycastle</groupId>
       <artifactId>bcmail-jdk14</artifactId>
       <version>129</version>
@@ -1012,14 +985,7 @@
       <version>2.0.2</version>
       <scope>provided</scope>
     </dependency>
-    <!-- 
-    <dependency>
-      <groupId>xerces</groupId>
-      <artifactId>xercesImpl</artifactId>
-      <version>2.6.2</version>
-      <scope>provided</scope>
-    </dependency>
-     -->
+
     <dependency>
       <groupId>com.thoughtworks.xstream</groupId>
       <artifactId>xstream</artifactId>
@@ -1073,37 +1039,32 @@
       <artifactId>activemq-core</artifactId>
       <version>4.1.1</version>
     </dependency>
+    
     <dependency>
       <groupId>javax.jcr</groupId>
       <artifactId>jcr</artifactId>
       <version>1.0</version>
     </dependency>
+   
     <dependency>
-      <groupId>avalon-phoenix</groupId>
-      <artifactId>avalon-phoenix-client</artifactId>
-      <version>4.2-SNAPSHOT</version>
-      <exclusions>
-        <exclusion>
-          <groupId>avalon-framework</groupId>
-          <artifactId>avalon-framework</artifactId>
-        </exclusion>
-      </exclusions>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
+      <version>1.2.14</version>
     </dependency>
-    <!-- phoenix runtime -->
     <dependency>
-      <groupId>spice</groupId>
-      <artifactId>spice-configkit</artifactId>
-      <version>1.1.2</version>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-core</artifactId>
+      <version>2.5.6</version>
     </dependency>
     <dependency>
-      <groupId>log4j</groupId>
-      <artifactId>log4j</artifactId>
-      <version>1.2.14</version>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-beans</artifactId>
+      <version>2.5.6</version>
     </dependency>
     <dependency>
       <groupId>org.springframework</groupId>
-      <artifactId>spring</artifactId>
-      <version>2.0</version>
+      <artifactId>spring-context</artifactId>
+      <version>2.5.6</version>
     </dependency>
     <dependency>
       <groupId>org.slf4j</groupId>
@@ -1138,23 +1099,8 @@
       <version>1.4.6</version>
       <scope>test</scope>
     </dependency>
-    
-    <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-      <version>2.0</version>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-      <version>2.0</version>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <version>1.0</version>
-      <scope>runtime</scope>
-    </dependency>
+   
+
   </dependencies>
   </dependencyManagement>
 

Modified: james/server/trunk/pop3server-function/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/pom.xml (original)
+++ james/server/trunk/pop3server-function/pom.xml Wed Jan  6 12:10:36 2010
@@ -50,16 +50,15 @@
     </dependency>
     <dependency>
       <groupId>org.apache.james</groupId>
+      <artifactId>james-server-socket-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.james</groupId>
       <artifactId>james-server-core-api</artifactId>
       <type>test-jar</type>
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>commons-jxpath</groupId>
-      <artifactId>commons-jxpath</artifactId>
-      <scope>runtime</scope>
-    </dependency> 
-    <dependency>
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>
     </dependency> 
@@ -107,23 +106,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
       <artifactId>james-server-core-library</artifactId>
       <type>test-jar</type>
       <scope>test</scope>

Modified: james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java (original)
+++ james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java Wed Jan  6 12:10:36 2010
@@ -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/trunk/remotemanager-function/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/pom.xml?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/pom.xml (original)
+++ james/server/trunk/remotemanager-function/pom.xml Wed Jan  6 12:10:36 2010
@@ -106,23 +106,7 @@
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.apache.james</groupId>
-      <artifactId>james-server-avalon-guice-bridge-api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.guice</groupId>
-      <artifactId>guice</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.guiceyfruit</groupId>
-      <artifactId>guiceyfruit-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>spring-aopalliance</groupId>
-      <artifactId>spring-aopalliance</artifactId>
-      <scope>runtime</scope>
-    </dependency>
+    
     <dependency>
       <groupId>org.apache.james</groupId>
       <artifactId>james-server-core-api</artifactId>

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerProtocolHandlerFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerProtocolHandlerFactory.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerProtocolHandlerFactory.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerProtocolHandlerFactory.java Wed Jan  6 12:10:36 2010
@@ -25,7 +25,6 @@
 import java.util.List;
 import java.util.Map;
 
-import javax.annotation.PostConstruct;
 import javax.annotation.Resource;
 
 import org.apache.commons.configuration.ConfigurationException;
@@ -68,12 +67,6 @@
 
     private MailServer mailServer;
 
-    
-    @PostConstruct
-    public void init() throws Exception {
-        super.init();
-    }
-
     @SuppressWarnings("unchecked")
     public void onConfigure(HierarchicalConfiguration configuration)
         throws ConfigurationException {

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AbstractMappingCmdHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AbstractMappingCmdHandler.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AbstractMappingCmdHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AbstractMappingCmdHandler.java Wed Jan  6 12:10:36 2010
@@ -31,7 +31,7 @@
     protected final static String REMOVE_MAPPING_ACTION = "REMOVEMAPPING";
     protected VirtualUserTableManagementService vutManagement;
 
-    @Resource(name = "virtualusertablemanagement")
+    @Resource(name = "virtualusertablemanagementservice")
     public final void setVirtualUserTableManagementService(VirtualUserTableManagementService vutManagement) {
         this.vutManagement = vutManagement;
     }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/ListAllMappingsCmdHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/ListAllMappingsCmdHandler.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/ListAllMappingsCmdHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/ListAllMappingsCmdHandler.java Wed Jan  6 12:10:36 2010
@@ -41,7 +41,7 @@
 
     protected VirtualUserTableManagementService vutManagement;
 
-    @Resource(name = "virtualusertablemanagement")
+    @Resource(name = "virtualusertablemanagementservice")
     public final void setVirtualUserTableManagementService(VirtualUserTableManagementService vutManagement) {
         this.vutManagement = vutManagement;
     }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/WelcomeHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/WelcomeHandler.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/WelcomeHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/WelcomeHandler.java Wed Jan  6 12:10:36 2010
@@ -19,7 +19,6 @@
 
 package org.apache.james.remotemanager.core;
 
-import org.apache.james.Constants;
 import org.apache.james.remotemanager.ConnectHandler;
 import org.apache.james.remotemanager.RemoteManagerResponse;
 import org.apache.james.remotemanager.RemoteManagerSession;
@@ -27,7 +26,7 @@
 public class WelcomeHandler implements ConnectHandler{
 
     public void onConnect(RemoteManagerSession session) {
-        session.writeRemoteManagerResponse(new RemoteManagerResponse("JAMES Remote Administration Tool " + Constants.SOFTWARE_VERSION));
+        session.writeRemoteManagerResponse(new RemoteManagerResponse("JAMES Remote Administration Tool "));// + Constants.SOFTWARE_VERSION));
     }
 
 }

Modified: james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java (original)
+++ james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java Wed Jan  6 12:10:36 2010
@@ -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/trunk/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java?rev=896414&r1=896413&r2=896414&view=diff
==============================================================================
--- james/server/trunk/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java (original)
+++ james/server/trunk/smtp-protocol-library/src/main/java/org/apache/james/smtpserver/protocol/core/fastfail/DNSRBLHandler.java Wed Jan  6 12:10:36 2010
@@ -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>();



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org