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

ChangeTarget.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.monitor;
00026 
00027 import org.objectweb.cjdbc.common.i18n.ConsoleTranslate;
00028 import org.objectweb.cjdbc.console.text.ConsoleException;
00029 import org.objectweb.cjdbc.console.text.module.MonitorConsole;
00030 
00031 /**
00032  * This class defines a ChangeTarget
00033  * 
00034  * @author <a href="mailto:Nicolas.Modrzyk@inria.fr">Nicolas Modrzyk </a>
00035  * @version 1.0
00036  */
00037 public class ChangeTarget extends AbstractMonitorCommand
00038 {
00039 
00040   /**
00041    * Creates a new <code>ChangeTarget.java</code> object
00042    * 
00043    * @param module monitoring module
00044    */
00045   public ChangeTarget(MonitorConsole module)
00046   {
00047     super(module);
00048   }
00049 
00050   /**
00051    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#parse(java.lang.String)
00052    */
00053   public void parse(String commandText) throws Exception
00054   {
00055     try
00056     {
00057       String target = commandText.trim();
00058       String possibleTarget = target.trim();
00059       if (target == null || target.equals(""))
00060       {
00061         module.setCurrentTarget(jmxClient.getRemoteName());
00062       } else
00063       {
00064         if (jmxClient.getDataCollectorProxy()
00065             .hasVirtualDatabase(possibleTarget))
00066         {
00067           // change the target for all commands
00068           module.setCurrentTarget(possibleTarget);
00069         } else
00070           console.printError(ConsoleTranslate.get(
00071               "module.database.invalid", possibleTarget));
00072       }
00073     } catch (Exception e)
00074     {
00075       throw new ConsoleException("monitor.command.settarget.failed",e);
00076     }
00077 
00078   }
00079 
00080   /**
00081    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandName()
00082    */
00083   public String getCommandName()
00084   {
00085     return "setTarget";
00086   }
00087 
00088   /**
00089    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandDescription()
00090    */
00091   public String getCommandDescription()
00092   {
00093     return ConsoleTranslate.get("monitor.command.settarget");
00094   }
00095 
00096 }

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