You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2009/08/22 19:56:05 UTC

svn commit: r806873 - in /james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver: ./ core/

Author: norman
Date: Sat Aug 22 17:56:04 2009
New Revision: 806873

URL: http://svn.apache.org/viewvc?rev=806873&view=rev
Log:
More generify

Modified:
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/HandlersPackage.java
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandler.java
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPSession.java
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreCmdHandlerLoader.java
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreMessageHookLoader.java
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/RcptCmdHandler.java

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/HandlersPackage.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/HandlersPackage.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/HandlersPackage.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/HandlersPackage.java Sat Aug 22 17:56:04 2009
@@ -35,6 +35,6 @@
      * 
      * @return Map
      */
-    List getHandlers();
+    List<String> getHandlers();
 
 }

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandler.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandler.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandler.java Sat Aug 22 17:56:04 2009
@@ -31,7 +31,6 @@
 import org.apache.james.socket.ProtocolHandler;
 import org.apache.james.socket.ProtocolHandlerHelper;
 import org.apache.james.socket.CRLFDelimitedByteBuffer;
-import org.apache.mailet.base.RFC822DateFormat;
 
 /**
  * Provides SMTP functionality by carrying out the server side of the SMTP
@@ -51,11 +50,6 @@
 	private final static Random random = new Random();
 
 	/**
-	 * Static RFC822DateFormat used to generate date headers
-	 */
-	private final static RFC822DateFormat rfc822DateFormat = new RFC822DateFormat();
-
-	/**
 	 * The name of the currently parsed command
 	 */
 	String curCommandName = null;
@@ -68,18 +62,18 @@
     /**
      * The hash map holds states which should be used in the whole connection
      */
-    private HashMap connectionState = new HashMap();
+    private HashMap<String, Object> connectionState = new HashMap<String, Object>();
     
     /**
      * If not null every line is sent to this command handler instead
      * of the default "command parsing -> dipatching" procedure.
      */
-    private LinkedList lineHandlers;
+    private LinkedList<LineHandler> lineHandlers;
 
     /**
      * Connect Handlers
      */
-    private LinkedList connectHandlers;
+    private LinkedList<ConnectHandler> connectHandlers;
 
 	private SMTPHandlerConfigurationData theConfigData;
 
@@ -284,7 +278,7 @@
      * 
      * @see org.apache.james.smtpserver.SMTPSession#getState()
      */
-    public Map getState() {
+    public Map<String,Object> getState() {
         Object res = getConnectionState().get(SMTPSession.SESSION_STATE_MAP);
         if (res == null || !(res instanceof Map)) {
             res = new HashMap();
@@ -362,7 +356,7 @@
     /**
      * @see org.apache.james.smtpserver.SMTPSession#getConnectionState()
      */
-    public Map getConnectionState() {
+    public Map<String,Object> getConnectionState() {
         return connectionState;
     }
 
@@ -380,7 +374,7 @@
      */
     public void pushLineHandler(LineHandler lineHandler) {
         if (lineHandlers == null) {
-            lineHandlers = new LinkedList();
+            lineHandlers = new LinkedList<LineHandler>();
         }
         lineHandlers.addLast(lineHandler);
     }

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPHandlerChain.java Sat Aug 22 17:56:04 2009
@@ -63,7 +63,7 @@
      * @throws WiringException 
      */
     private void wireExtensibleHandlers() throws WiringException {
-        for (Iterator h = handlers.iterator(); h.hasNext(); ) {
+        for (Iterator<?> h = handlers.iterator(); h.hasNext(); ) {
             Object handler = h.next();
             if (handler instanceof ExtensibleHandler) {
                 List markerInterfaces = ((ExtensibleHandler) handler).getMarkerInterfaces();
@@ -243,16 +243,17 @@
     
     /**
      * Returns a list of handler of the requested type.
+     * @param <T>
      * 
      * @param type the type of handler we're interested in
      * @return a List of handlers
      */
-    public LinkedList getHandlers(Class type) {
-        LinkedList result = new LinkedList();
-        for (Iterator i = handlers.iterator(); i.hasNext(); ) {
+    public <T> LinkedList<T> getHandlers(Class<T> type) {
+        LinkedList<T> result = new LinkedList<T>();
+        for (Iterator<?> i = handlers.iterator(); i.hasNext(); ) {
             Object handler = i.next();
             if (type.isInstance(handler)) {
-                result.add(handler);
+                result.add((T)handler);
             }
         }
         return result;

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPSession.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPSession.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPSession.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/SMTPSession.java Sat Aug 22 17:56:04 2009
@@ -54,7 +54,7 @@
      *
      * @return map of the current SMTPSession state per mail
      */
-    Map getState();
+    Map<String, Object> getState();
 
     /**
      * Resets message-specific, but not authenticated user, state.
@@ -123,7 +123,7 @@
      *
      * @return map of the current SMTPSession state per connection
      */
-    Map getConnectionState();
+    Map<String,Object> getConnectionState();
 
     /**
      * Put a new line handler in the chain

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreCmdHandlerLoader.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreCmdHandlerLoader.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreCmdHandlerLoader.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreCmdHandlerLoader.java Sat Aug 22 17:56:04 2009
@@ -34,32 +34,32 @@
  */
 public class CoreCmdHandlerLoader implements HandlersPackage {
 
-    private final Object COMMANDDISPATCHER = SMTPCommandDispatcherLineHandler.class.getName();
-    private final Object AUTHCMDHANDLER = AuthCmdHandler.class.getName();
-    private final Object DATACMDHANDLER = DataCmdHandler.class.getName();
-    private final Object EHLOCMDHANDLER = EhloCmdHandler.class.getName();
-    private final Object EXPNCMDHANDLER = ExpnCmdHandler.class.getName();
-    private final Object HELOCMDHANDLER = HeloCmdHandler.class.getName();
-    private final Object HELPCMDHANDLER = HelpCmdHandler.class.getName();
-    private final Object MAILCMDHANDLER = MailCmdHandler.class.getName();
-    private final Object NOOPCMDHANDLER = NoopCmdHandler.class.getName();
-    private final Object QUITCMDHANDLER = QuitCmdHandler.class.getName();
-    private final Object RCPTCMDHANDLER = RcptCmdHandler.class.getName();
-    private final Object RSETCMDHANDLER = RsetCmdHandler.class.getName();
-    private final Object VRFYCMDHANDLER = VrfyCmdHandler.class.getName();
-    private final Object MAILSIZEHOOK = MailSizeEsmtpExtension.class.getName();
-    private final Object WELCOMEMESSAGEHANDLER = WelcomeMessageHandler.class.getName();
-    private final Object USERSREPOSITORYAUTHHANDLER = UsersRepositoryAuthHook.class.getName();
-    private final Object POSTMASTERABUSEHOOK = PostmasterAbuseRcptHook.class.getName();
-    private final Object AUTHREQUIREDTORELAY = AuthRequiredToRelayRcptHook.class.getName();
-    private final Object SENDERAUTHIDENTITYVERIFICATION = SenderAuthIdentifyVerificationRcptHook.class.getName();
-    private final Object DATALINEMESSAGEHOOKHANDLER = DataLineMessageHookHandler.class.getName();
+    private final String COMMANDDISPATCHER = SMTPCommandDispatcherLineHandler.class.getName();
+    private final String AUTHCMDHANDLER = AuthCmdHandler.class.getName();
+    private final String DATACMDHANDLER = DataCmdHandler.class.getName();
+    private final String EHLOCMDHANDLER = EhloCmdHandler.class.getName();
+    private final String EXPNCMDHANDLER = ExpnCmdHandler.class.getName();
+    private final String HELOCMDHANDLER = HeloCmdHandler.class.getName();
+    private final String HELPCMDHANDLER = HelpCmdHandler.class.getName();
+    private final String MAILCMDHANDLER = MailCmdHandler.class.getName();
+    private final String NOOPCMDHANDLER = NoopCmdHandler.class.getName();
+    private final String QUITCMDHANDLER = QuitCmdHandler.class.getName();
+    private final String RCPTCMDHANDLER = RcptCmdHandler.class.getName();
+    private final String RSETCMDHANDLER = RsetCmdHandler.class.getName();
+    private final String VRFYCMDHANDLER = VrfyCmdHandler.class.getName();
+    private final String MAILSIZEHOOK = MailSizeEsmtpExtension.class.getName();
+    private final String WELCOMEMESSAGEHANDLER = WelcomeMessageHandler.class.getName();
+    private final String USERSREPOSITORYAUTHHANDLER = UsersRepositoryAuthHook.class.getName();
+    private final String POSTMASTERABUSEHOOK = PostmasterAbuseRcptHook.class.getName();
+    private final String AUTHREQUIREDTORELAY = AuthRequiredToRelayRcptHook.class.getName();
+    private final String SENDERAUTHIDENTITYVERIFICATION = SenderAuthIdentifyVerificationRcptHook.class.getName();
+    private final String DATALINEMESSAGEHOOKHANDLER = DataLineMessageHookHandler.class.getName();
    
     /**
      * @see org.apache.james.smtpserver.HandlersPackage#getHandlers()
      */
-    public List getHandlers() {
-        List commands = new LinkedList();
+    public List<String> getHandlers() {
+        List<String> commands = new LinkedList<String>();
         
         // Insert the basecommands in the Map
         commands.add(WELCOMEMESSAGEHANDLER);

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreMessageHookLoader.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreMessageHookLoader.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreMessageHookLoader.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/CoreMessageHookLoader.java Sat Aug 22 17:56:04 2009
@@ -31,14 +31,14 @@
  */
 public class CoreMessageHookLoader implements HandlersPackage {
 
-    private final Object ADDDEFAULTATTRIBUTESHANDLER = AddDefaultAttributesMessageHook.class.getName();
-    private final Object SENDMAILHANDLER = SendMailHandler.class.getName();
+    private final String ADDDEFAULTATTRIBUTESHANDLER = AddDefaultAttributesMessageHook.class.getName();
+    private final String SENDMAILHANDLER = SendMailHandler.class.getName();
     
     /**
      * @see org.apache.james.smtpserver.HandlersPackage#getHandlers()
      */
-    public List getHandlers() {
-        List commands = new LinkedList();
+    public List<String> getHandlers() {
+        List<String> commands = new LinkedList<String>();
         
         // Add the default messageHooks
         commands.add(ADDDEFAULTATTRIBUTESHANDLER);

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/RcptCmdHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/RcptCmdHandler.java?rev=806873&r1=806872&r2=806873&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/RcptCmdHandler.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/RcptCmdHandler.java Sat Aug 22 17:56:04 2009
@@ -39,7 +39,7 @@
 public class RcptCmdHandler extends AbstractHookableCmdHandler<RcptHook> implements
         CommandHandler {
 
-    public static final Object CURRENT_RECIPIENT = "CURRENT_RECIPIENT"; // Current recipient
+    public static final String CURRENT_RECIPIENT = "CURRENT_RECIPIENT"; // Current recipient
 
     /**
      * Handler method called upon receipt of a RCPT command. Reads recipient.



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