JOnASTask.java

00001 
00027 package org.objectweb.jonas.ant;
00028 
00029 import org.apache.tools.ant.BuildException;
00030 import org.apache.tools.ant.taskdefs.Java;
00031 
00036 public class JOnASTask extends BootstrapTask {
00037 
00041     private static final String START_CLASS = "org.objectweb.jonas.server.Server";
00042 
00046     private static final String ADMIN_CLASS = "org.objectweb.jonas.adm.JonasAdmin";
00047 
00051     private static final String CHECKENV_CLASS = "org.objectweb.jonas.tools.CheckEnv";
00052 
00056     private static final String VERSION_CLASS = "org.objectweb.jonas_lib.version.Version";
00057 
00061     private static final int START_MODE = 0;
00062 
00066     private static final int STOP_MODE = 1;
00067 
00071     private static final int JNDI_MODE = 2;
00072 
00076     private static final int CHECK_MODE = 3;
00077 
00081     private static final int VERSION_MODE = 4;
00082 
00086     private static final int PING_MODE = 5;
00087 
00091     private static final int DEFAULT_MODE = START_MODE;
00092 
00096     private String mode = null;
00097 
00102     public void execute() {
00103         int userMode = DEFAULT_MODE;
00104 
00105         if (mode.equalsIgnoreCase("start")) {
00106             userMode = START_MODE;
00107         } else if (mode.equalsIgnoreCase("stop")) {
00108             userMode = STOP_MODE;
00109         } else if (mode.equalsIgnoreCase("jndi")) {
00110             userMode = JNDI_MODE;
00111         } else if (mode.equalsIgnoreCase("check")) {
00112             userMode = CHECK_MODE;
00113         } else if (mode.equalsIgnoreCase("version")) {
00114             userMode = VERSION_MODE;
00115         } else if (mode.equalsIgnoreCase("ping")) {
00116             userMode = PING_MODE;
00117         } else {
00118             throw new BuildException("The mode '" + mode + "' is invalid.");
00119         }
00120 
00121         // Start the task
00122         Java bootstrapTask = null;
00123         switch (userMode) {
00124             default:
00125             case START_MODE:
00126                 bootstrapTask = getBootstraptask(START_CLASS);
00127                 break;
00128             case STOP_MODE:
00129                 bootstrapTask = getBootstraptask(ADMIN_CLASS);
00130                 bootstrapTask.createArg().setValue("-s");
00131                 break;
00132             case JNDI_MODE:
00133                 bootstrapTask = getBootstraptask(ADMIN_CLASS);
00134                 bootstrapTask.createArg().setValue("-j");
00135                 break;
00136             case CHECK_MODE:
00137                 bootstrapTask = getBootstraptask(CHECKENV_CLASS);
00138                 break;
00139             case VERSION_MODE:
00140                 bootstrapTask = getBootstraptask(VERSION_CLASS);
00141                 break;
00142             case PING_MODE:
00143                 bootstrapTask = getBootstraptask(ADMIN_CLASS);
00144                 bootstrapTask.createArg().setValue("-ping");
00145                 break;
00146         }
00147 
00148         bootstrapTask.executeJava();
00149 
00150     }
00151 
00155     public String getMode() {
00156         return mode;
00157     }
00158 
00163     public void setMode(String mode) {
00164         this.mode = mode;
00165     }
00166 }

Generated on Tue Feb 15 15:05:14 2005 for JOnAS by  doxygen 1.3.9.1