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/16 16:41:47 UTC

svn commit: r899982 - in /james/server/trunk/remotemanager-function/src: main/java/org/apache/james/remotemanager/ main/java/org/apache/james/remotemanager/core/ main/java/org/apache/james/remotemanager/mina/ main/java/org/apache/james/remotemanager/mi...

Author: norman
Date: Sat Jan 16 15:41:46 2010
New Revision: 899982

URL: http://svn.apache.org/viewvc?rev=899982&view=rev
Log:
Complete Async version of RemoteManager (JAMES-953)

Added:
    james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/AsyncRemoteManagerTest.java
Modified:
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerHandler.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerResponse.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/DeleteSpoolCmdHandler.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/RemoteManagerCommandDispatcherLineHandler.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/AsyncRemoteManager.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerIoHandler.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerSessionImpl.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/FilterLineHandlerAdapter.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerResponseFilter.java
    james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerValidationFilter.java
    james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/RemoteManagerTest.java

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerHandler.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerHandler.java Sat Jan 16 15:41:46 2010
@@ -163,10 +163,6 @@
     public void writeRemoteManagerResponse(RemoteManagerResponse response) {
         // Write a single-line or multiline response
         if (response != null) {
-            if (response.getRawLine() != null) {
-                context.writeLoggedFlushedResponse(response.getRawLine());
-            } 
-            
             List<CharSequence> responseList = response.getLines();
             if (responseList != null) {
                 for (int k = 0; k < responseList.size(); k++) {

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerResponse.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerResponse.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerResponse.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/RemoteManagerResponse.java Sat Jan 16 15:41:46 2010
@@ -41,10 +41,7 @@
      */
     public RemoteManagerResponse(CharSequence description) {
         this.rawLine = description.toString();
-    }
-  
-    public RemoteManagerResponse() {
-        
+        appendLine(description.toString());
     }
 
     /**

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java Sat Jan 16 15:41:46 2010
@@ -24,13 +24,15 @@
 import org.apache.james.remotemanager.RemoteManagerResponse;
 import org.apache.james.remotemanager.RemoteManagerSession;
 
-public class AuthorizationHandler implements ConnectHandler, LineHandler {
+public class AuthorizationHandler implements ConnectHandler {
 
     private final static String AUTHORIZATION_STATE = "AUTHORIZATION_STATE";
     private final static int LOGIN_SUPPLIED = 1;
     private final static int PASSWORD_SUPPLIED = 2;
 
     private final static String USERNAME = "USERNAME";
+    
+    private final LineHandler lineHandler = new AuthorizationLineHandler();
 
     /*
      * (non-Javadoc)
@@ -46,9 +48,11 @@
         response.appendLine("Login id:");
 
         session.writeRemoteManagerResponse(response);
-
+        session.pushLineHandler(lineHandler);
         session.getState().put(AUTHORIZATION_STATE, LOGIN_SUPPLIED);
     }
+    
+    private final class AuthorizationLineHandler implements LineHandler {
 
     /*
      * (non-Javadoc)
@@ -84,5 +88,6 @@
             session.getState().remove(USERNAME);
         }
     }
+    }
 
 }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/DeleteSpoolCmdHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/DeleteSpoolCmdHandler.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/DeleteSpoolCmdHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/DeleteSpoolCmdHandler.java Sat Jan 16 15:41:46 2010
@@ -69,7 +69,7 @@
      * @see org.apache.james.remotemanager.CommandHandler#onCommand(org.apache.james.remotemanager.RemoteManagerSession, org.apache.james.remotemanager.RemoteManagerRequest)
      */
     public RemoteManagerResponse onCommand(RemoteManagerSession session, RemoteManagerRequest request) {
-        RemoteManagerResponse response;
+        RemoteManagerResponse response = null;
         String[] args = null;
         String parameters = request.getArgument();
         
@@ -106,10 +106,14 @@
             } else {
                 count = spoolManagement.removeSpoolItems(url, key, lockingFailures, new SpoolFilter(SpoolFilter.ERROR_STATE, header, regex));
             }
-            response = new RemoteManagerResponse();
             for (Iterator<String> iterator = lockingFailures.iterator(); iterator.hasNext();) {
                 String lockFailureKey = iterator.next();
-                response.appendLine("Error locking the mail with key:  " + lockFailureKey);
+                String errorMsg= "Error locking the mail with key:  " + lockFailureKey;
+                if (response == null) {
+                    response = new RemoteManagerResponse(errorMsg);
+                } else {
+                    response.appendLine(errorMsg);
+                }
             }
 
             response.appendLine("Number of deleted mails: " + count);

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/RemoteManagerCommandDispatcherLineHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/RemoteManagerCommandDispatcherLineHandler.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/RemoteManagerCommandDispatcherLineHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/core/RemoteManagerCommandDispatcherLineHandler.java Sat Jan 16 15:41:46 2010
@@ -102,7 +102,7 @@
         int spaceIndex = cmdString.indexOf(" ");
         if (spaceIndex > 0) {
             curCommandName = cmdString.substring(0, spaceIndex);
-            curCommandArgument = cmdString.substring(spaceIndex + 1);
+            curCommandArgument = cmdString.substring(spaceIndex + 1).trim();
         } else {
             curCommandName = cmdString;
         }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/AsyncRemoteManager.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/AsyncRemoteManager.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/AsyncRemoteManager.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/AsyncRemoteManager.java Sat Jan 16 15:41:46 2010
@@ -25,11 +25,14 @@
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.james.pop3server.core.CoreCmdHandlerLoader;
 import org.apache.james.remotemanager.RemoteManagerHandlerConfigurationData;
 import org.apache.james.remotemanager.RemoteManagerMBean;
+import org.apache.james.remotemanager.core.CoreCmdHandlerLoader;
+import org.apache.james.remotemanager.mina.filter.RemoteManagerResponseFilter;
+import org.apache.james.remotemanager.mina.filter.RemoteManagerValidationFilter;
 import org.apache.james.socket.mina.AbstractAsyncServer;
 import org.apache.james.socket.shared.ProtocolHandlerChainImpl;
+import org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder;
 import org.apache.mina.core.service.IoHandler;
 
 public class AsyncRemoteManager extends AbstractAsyncServer implements RemoteManagerMBean{
@@ -64,12 +67,23 @@
         }
     }
 
+    
     @Override
     protected void preInit() throws Exception {
         prepareHandlerChain();
     }
 
     
+    protected DefaultIoFilterChainBuilder createIoFilterChainBuilder() {
+        DefaultIoFilterChainBuilder builder = super.createIoFilterChainBuilder();
+        
+        // response and validation filter to the chain
+        builder.addLast(RemoteManagerResponseFilter.NAME, new RemoteManagerResponseFilter());
+        builder.addLast("requestValidationFilter", new RemoteManagerValidationFilter(getLogger()));
+        return builder;
+    }
+    
+    
     private void prepareHandlerChain() throws Exception {
         
         //read from the XML configuration and create and configure each of the handlers
@@ -80,7 +94,7 @@
         handlerChain = getLoader().load(ProtocolHandlerChainImpl.class, getLogger(), jamesConfiguration);
     }
 
-
+    
     /*
      * (non-Javadoc)
      * @see org.apache.james.remotemanager.RemoteManagerMBean#getNetworkInterface()

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerIoHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerIoHandler.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerIoHandler.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerIoHandler.java Sat Jan 16 15:41:46 2010
@@ -27,14 +27,12 @@
 import org.apache.james.remotemanager.ConnectHandler;
 import org.apache.james.remotemanager.LineHandler;
 import org.apache.james.remotemanager.RemoteManagerHandlerConfigurationData;
-import org.apache.james.remotemanager.RemoteManagerRequest;
 import org.apache.james.remotemanager.RemoteManagerSession;
 import org.apache.mina.core.service.IoHandlerAdapter;
 import org.apache.mina.core.session.IdleStatus;
 import org.apache.mina.core.session.IoSession;
 
 public class RemoteManagerIoHandler extends IoHandlerAdapter{
-    private final static String REMOTEMANAGER_SESSION = "org.apache.james.remotemanager.mina.RemoteManagerIoHandler.REMOTEMANAGER_SESSION";
     
     private Log logger;
     private ProtocolHandlerChain chain;
@@ -53,13 +51,12 @@
      */
     public void messageReceived(IoSession session, Object message)
             throws Exception {
-        RemoteManagerSession rSession = (RemoteManagerSession) session.getAttribute(REMOTEMANAGER_SESSION);
+        RemoteManagerSession rSession = (RemoteManagerSession) session.getAttribute(RemoteManagerSessionImpl.REMOTEMANAGER_SESSION);
         LinkedList<LineHandler> lineHandlers = chain.getHandlers(LineHandler.class);
         if (lineHandlers.size() > 0) {
             // thats not really optimal but it allow us to keep things as generic as possible
             // Will prolly get refactored later
-            String line = ((RemoteManagerRequest) message).toString();
-            ((LineHandler) lineHandlers.getLast()).onLine(rSession, line);
+            ((LineHandler) lineHandlers.getLast()).onLine(rSession, (String) message);
         }
     }
 
@@ -80,9 +77,11 @@
      */
     public void sessionCreated(IoSession session) throws Exception {
         RemoteManagerSession rSession  = new RemoteManagerSessionImpl(config, logger, session);
+        rSession.getState().put(RemoteManagerSession.CURRENT_USERREPOSITORY, "LocalUsers");
 
         // Add attribute
-        session.setAttribute(REMOTEMANAGER_SESSION,rSession);
+        session.setAttribute(RemoteManagerSessionImpl.REMOTEMANAGER_SESSION,rSession);
+
     }
 
     /**
@@ -105,7 +104,7 @@
         if (connectHandlers != null) {
             for (int i = 0; i < connectHandlers.size(); i++) {
                 connectHandlers.get(i).onConnect(
-                        (RemoteManagerSession) session.getAttribute(REMOTEMANAGER_SESSION));
+                        (RemoteManagerSession) session.getAttribute(RemoteManagerSessionImpl.REMOTEMANAGER_SESSION));
             }
         }    
     }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerSessionImpl.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerSessionImpl.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerSessionImpl.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/RemoteManagerSessionImpl.java Sat Jan 16 15:41:46 2010
@@ -28,6 +28,7 @@
 import org.apache.james.remotemanager.RemoteManagerResponse;
 import org.apache.james.remotemanager.RemoteManagerSession;
 import org.apache.james.remotemanager.mina.filter.FilterLineHandlerAdapter;
+import org.apache.james.remotemanager.mina.filter.RemoteManagerResponseFilter;
 import org.apache.mina.core.session.IoSession;
 
 public class RemoteManagerSessionImpl implements RemoteManagerSession {
@@ -37,6 +38,9 @@
     private RemoteManagerHandlerConfigurationData config;
     private int lineHandlerCount = 0;
 
+    public final static String REMOTEMANAGER_SESSION = "REMOTEMANAGER_SESSION";
+
+    
     public RemoteManagerSessionImpl(RemoteManagerHandlerConfigurationData config, Log logger, IoSession session) {
         this.logger = logger;
         this.session = session;
@@ -106,6 +110,6 @@
      */
     public void pushLineHandler(LineHandler overrideCommandHandler) {
         lineHandlerCount++;
-        session.getFilterChain().addAfter("protocolCodecFactory", "lineHandler" + lineHandlerCount, new FilterLineHandlerAdapter(overrideCommandHandler));
+        session.getFilterChain().addAfter(RemoteManagerResponseFilter.NAME, "lineHandler" + lineHandlerCount, new FilterLineHandlerAdapter(overrideCommandHandler));
     }
 }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/FilterLineHandlerAdapter.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/FilterLineHandlerAdapter.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/FilterLineHandlerAdapter.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/FilterLineHandlerAdapter.java Sat Jan 16 15:41:46 2010
@@ -20,6 +20,7 @@
 
 import org.apache.james.remotemanager.LineHandler;
 import org.apache.james.remotemanager.RemoteManagerSession;
+import org.apache.james.remotemanager.mina.RemoteManagerSessionImpl;
 import org.apache.mina.core.filterchain.IoFilterAdapter;
 import org.apache.mina.core.session.IoSession;
 
@@ -30,8 +31,6 @@
  */
 public final class FilterLineHandlerAdapter extends IoFilterAdapter {
 
-    public final static String REMOTEMANAGER_SESSION = "REMOTEMANAGER_SESSION";
-
     private LineHandler lineHandler;
 
     public FilterLineHandlerAdapter(LineHandler lineHandler) {
@@ -43,7 +42,7 @@
      */
     public void messageReceived(NextFilter arg0, IoSession session, Object arg2)
             throws Exception {
-        lineHandler.onLine((RemoteManagerSession) session.getAttribute(REMOTEMANAGER_SESSION),
+        lineHandler.onLine((RemoteManagerSession) session.getAttribute(RemoteManagerSessionImpl.REMOTEMANAGER_SESSION),
                 (((String) arg2)));
     }
 }

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerResponseFilter.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerResponseFilter.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerResponseFilter.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerResponseFilter.java Sat Jan 16 15:41:46 2010
@@ -21,7 +21,6 @@
 
 import java.util.Locale;
 
-import org.apache.james.remotemanager.RemoteManagerRequest;
 import org.apache.james.remotemanager.RemoteManagerResponse;
 import org.apache.james.socket.mina.filter.AbstractResponseFilter;
 import org.apache.mina.core.session.IoSession;
@@ -30,42 +29,13 @@
 
 public class RemoteManagerResponseFilter extends AbstractResponseFilter{
 
+    public final static String NAME = "remoteManagerResponseFilter";
     private final static String CLOSE_ATTRIBUTE =  RemoteManagerResponseFilter.class.getName() + ".closeAttribute";;
     
     @Override
     protected String getCloseAttribute() {
         return CLOSE_ATTRIBUTE;
     }
-    
-    /**
-     * (non-Javadoc)
-     * 
-     * @see org.apache.mina.core.filterchain.IoFilterAdapter#messageReceived(org.apache.mina.core.filterchain.IoFilter.NextFilter,
-     *      org.apache.mina.core.session.IoSession, java.lang.Object)
-     */
-    public void messageReceived(NextFilter nextFilter, IoSession session, Object message) throws Exception {
-        if (message instanceof String) {
-            String cmdString = (String) message;
-            if (cmdString != null) {
-                cmdString = cmdString.trim();
-            }
-
-            String curCommandArgument = null;
-            String curCommandName = null;
-            int spaceIndex = cmdString.indexOf(" ");
-            if (spaceIndex > 0) {
-                curCommandName = cmdString.substring(0, spaceIndex);
-                curCommandArgument = cmdString.substring(spaceIndex + 1);
-            } else {
-                curCommandName = cmdString;
-            }
-            curCommandName = curCommandName.toUpperCase(Locale.US);
-
-            nextFilter.messageReceived(session, new RemoteManagerRequest(curCommandName, curCommandArgument));
-        } else {
-            super.messageReceived(nextFilter, session, message);
-        }
-    }
 
     /**
      * @see org.apache.mina.core.filterchain.IoFilterAdapter#filterWrite(org.apache.mina.core.filterchain.IoFilter.NextFilter,

Modified: james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerValidationFilter.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerValidationFilter.java?rev=899982&r1=899981&r2=899982&view=diff
==============================================================================
--- james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerValidationFilter.java (original)
+++ james/server/trunk/remotemanager-function/src/main/java/org/apache/james/remotemanager/mina/filter/RemoteManagerValidationFilter.java Sat Jan 16 15:41:46 2010
@@ -44,10 +44,7 @@
 
     @Override
     protected boolean isValidRequest(Object requestObject) {
-        if (requestObject instanceof RemoteManagerRequest) {
-            return true;
-        }
-        return false;
+        return true;
     }
 
     @Override

Added: james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/AsyncRemoteManagerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/AsyncRemoteManagerTest.java?rev=899982&view=auto
==============================================================================
--- james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/AsyncRemoteManagerTest.java (added)
+++ james/server/trunk/remotemanager-function/src/test/java/org/apache/james/remotemanager/AsyncRemoteManagerTest.java Sat Jan 16 15:41:46 2010
@@ -0,0 +1,51 @@
+/****************************************************************
+ * 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.remotemanager;
+
+import org.apache.commons.logging.impl.SimpleLog;
+import org.apache.james.remotemanager.mina.AsyncRemoteManager;
+import org.apache.james.util.ConfigurationAdapter;
+
+public class AsyncRemoteManagerTest extends RemoteManagerTest{
+
+
+    private AsyncRemoteManager remotemanager;
+
+    protected void setUp() throws Exception {
+        setUpServiceManager();
+
+        remotemanager = new AsyncRemoteManager();
+        remotemanager.setDNSService(dnsservice);
+        remotemanager.setFileSystem(filesystem);
+        remotemanager.setLoader(serviceManager);
+        SimpleLog log = new SimpleLog("Mock");
+        log.setLevel(SimpleLog.LOG_LEVEL_DEBUG);
+        remotemanager.setLog(log);
+        remotemanager.setMailServer(mailServer);
+        m_testConfiguration = new RemoteManagerTestConfiguration(m_remoteManagerListenerPort);
+    }
+
+    protected void finishSetUp(RemoteManagerTestConfiguration testConfiguration) throws Exception {
+        testConfiguration.init();
+        remotemanager.configure(new ConfigurationAdapter(testConfiguration));
+        remotemanager.init();
+    }
+
+}

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=899982&r1=899981&r2=899982&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 Sat Jan 16 15:41:46 2010
@@ -92,15 +92,15 @@
     protected InternetPrintWriter m_writer;
     protected TelnetClient m_telnetClient;
     private MockUsersRepository m_mockUsersRepository;
-    private MockMailServer mailServer;
+    protected MockMailServer mailServer;
     protected FakeLoader serviceManager;
     private SimpleConnectionManager connectionManager;
-    private MockUsersStore usersStore;
+    protected MockUsersStore usersStore;
     private MockSocketManager socketManager;
     private MockThreadManager threadManager;
-    private DNSService dnsservice;
-    private MockFileSystem filesystem;
-    private MockVirtualUserTableManagementService vutManagement;
+    protected DNSService dnsservice;
+    protected MockFileSystem filesystem;
+    protected MockVirtualUserTableManagementService vutManagement;
     private AvalonProtocolServer protoserver;
     
     protected void setUp() throws Exception {



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