You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by ng...@apache.org on 2009/12/02 09:09:15 UTC

svn commit: r886070 - in /mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command: CommandFactoryFactory.java impl/SITE.java

Author: ngn
Date: Wed Dec  2 08:09:15 2009
New Revision: 886070

URL: http://svn.apache.org/viewvc?rev=886070&view=rev
Log:
Allow SITE commands to be configured as any other command (FTPSERVER-343)

Modified:
    mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java
    mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/SITE.java

Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java?rev=886070&r1=886069&r2=886070&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/CommandFactoryFactory.java Wed Dec  2 08:09:15 2009
@@ -61,6 +61,11 @@
 import org.apache.ftpserver.command.impl.RNFR;
 import org.apache.ftpserver.command.impl.RNTO;
 import org.apache.ftpserver.command.impl.SITE;
+import org.apache.ftpserver.command.impl.SITE_DESCUSER;
+import org.apache.ftpserver.command.impl.SITE_HELP;
+import org.apache.ftpserver.command.impl.SITE_STAT;
+import org.apache.ftpserver.command.impl.SITE_WHO;
+import org.apache.ftpserver.command.impl.SITE_ZONE;
 import org.apache.ftpserver.command.impl.SIZE;
 import org.apache.ftpserver.command.impl.STAT;
 import org.apache.ftpserver.command.impl.STOR;
@@ -120,6 +125,12 @@
         DEFAULT_COMMAND_MAP.put("RNTO", new RNTO());
         DEFAULT_COMMAND_MAP.put("SITE", new SITE());
         DEFAULT_COMMAND_MAP.put("SIZE", new SIZE());
+        DEFAULT_COMMAND_MAP.put("SITE_DESCUSER", new SITE_DESCUSER());
+        DEFAULT_COMMAND_MAP.put("SITE_HELP", new SITE_HELP());
+        DEFAULT_COMMAND_MAP.put("SITE_STAT", new SITE_STAT());
+        DEFAULT_COMMAND_MAP.put("SITE_WHO", new SITE_WHO());
+        DEFAULT_COMMAND_MAP.put("SITE_ZONE", new SITE_ZONE());
+
         DEFAULT_COMMAND_MAP.put("STAT", new STAT());
         DEFAULT_COMMAND_MAP.put("STOR", new STOR());
         DEFAULT_COMMAND_MAP.put("STOU", new STOU());

Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/SITE.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/SITE.java?rev=886070&r1=886069&r2=886070&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/SITE.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/SITE.java Wed Dec  2 08:09:15 2009
@@ -44,9 +44,6 @@
 
     private final Logger LOG = LoggerFactory.getLogger(SITE.class);
 
-    private static final HashMap<String, Command> COMMAND_MAP = new HashMap<String, Command>(
-            16);
-
     /**
      * Execute command.
      */
@@ -74,7 +71,7 @@
 
         // call appropriate command method
         String siteRequest = "SITE_" + argument;
-        Command command = (Command) COMMAND_MAP.get(siteRequest);
+        Command command = context.getCommandFactory().getCommand(siteRequest);
         try {
             if (command != null) {
                 command.execute(session, context, request);
@@ -93,18 +90,4 @@
         }
 
     }
-
-    // initialize all the SITE command handlers
-    static {
-        COMMAND_MAP.put("SITE_DESCUSER",
-                new org.apache.ftpserver.command.impl.SITE_DESCUSER());
-        COMMAND_MAP.put("SITE_HELP",
-                new org.apache.ftpserver.command.impl.SITE_HELP());
-        COMMAND_MAP.put("SITE_STAT",
-                new org.apache.ftpserver.command.impl.SITE_STAT());
-        COMMAND_MAP
-                .put("SITE_WHO", new org.apache.ftpserver.command.impl.SITE_WHO());
-        COMMAND_MAP.put("SITE_ZONE",
-                new org.apache.ftpserver.command.impl.SITE_ZONE());
-    }
 }