Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

Enable.java

00001 /**
00002  * C-JDBC: Clustered JDBC.
00003  * Copyright (C) 2002-2004 French National Institute For Research In Computer
00004  * Science And Control (INRIA).
00005  * Contact: c-jdbc@objectweb.org
00006  * 
00007  * This library is free software; you can redistribute it and/or modify it
00008  * under the terms of the GNU Lesser General Public License as published by the
00009  * Free Software Foundation; either version 2.1 of the License, or any later
00010  * version.
00011  * 
00012  * This library is distributed in the hope that it will be useful, but WITHOUT
00013  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00014  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
00015  * for more details.
00016  * 
00017  * You should have received a copy of the GNU Lesser General Public License
00018  * along with this library; if not, write to the Free Software Foundation,
00019  * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
00020  *
00021  * Initial developer(s): Nicolas Modrzyk
00022  * Contributor(s): ______________________.
00023  */
00024 
00025 package org.objectweb.cjdbc.console.text.commands.dbadmin;
00026 
00027 import java.util.StringTokenizer;
00028 
00029 import org.objectweb.cjdbc.common.i18n.ConsoleTranslate;
00030 import org.objectweb.cjdbc.common.jmx.mbeans.VirtualDatabaseMBean;
00031 import org.objectweb.cjdbc.console.text.ConsoleException;
00032 import org.objectweb.cjdbc.console.text.module.VirtualDatabaseAdmin;
00033 
00034 /**
00035  * This class defines a Enable
00036  * 
00037  * @author <a href="mailto:Nicolas.Modrzyk@inria.fr">Nicolas Modrzyk </a>
00038  * @version 1.0
00039  */
00040 public class Enable extends AbstractAdminCommand
00041 {
00042 
00043   /**
00044    * Creates a new <code>Enable.java</code> object
00045    * 
00046    * @param module the command is attached to
00047    */
00048   public Enable(VirtualDatabaseAdmin module)
00049   {
00050     super(module);
00051   }
00052 
00053   /**
00054    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#parse(java.lang.String)
00055    */
00056   public void parse(String commandText) throws Exception
00057   {
00058     String checkpoint = null;
00059     String backendName = null;
00060     StringTokenizer st = new StringTokenizer(commandText.trim());
00061 
00062     try
00063     {
00064       backendName = st.nextToken();
00065     }
00066     catch (Exception e)
00067     {
00068       throw new ConsoleException("admin.command.enable.need.backend");
00069     }
00070     if (st.hasMoreTokens())
00071       checkpoint = st.nextToken();
00072     VirtualDatabaseMBean vdjc = jmxClient.getVirtualDatabaseProxy(dbName, user,
00073         password);
00074     if (checkpoint == null)
00075     {
00076       console.println(ConsoleTranslate.get(
00077           "admin.command.enable.no.checkpoint", backendName));
00078       vdjc.enableBackend(backendName);
00079     }
00080     else
00081     {
00082       console.println(ConsoleTranslate.get(
00083           "admin.command.enable.with.checkpoint", new String[]{backendName,
00084               checkpoint}));
00085       vdjc.enableBackendFromCheckpoint(backendName);
00086     }
00087   }
00088 
00089   /**
00090    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandName()
00091    */
00092   public String getCommandName()
00093   {
00094 
00095     return "enable";
00096   }
00097 
00098   /**
00099    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandDescription()
00100    */
00101   public String getCommandDescription()
00102   {
00103     return ConsoleTranslate.get("admin.command.enable");
00104   }
00105 
00106   /**
00107    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandParameters()
00108    */
00109   public String getCommandParameters()
00110   {
00111     return "<backend> [<checkpoint>]";
00112   }
00113 }

Generated on Mon Apr 11 22:01:32 2005 for C-JDBC by  doxygen 1.3.9.1