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

Native.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;
00026 
00027 import java.io.BufferedReader;
00028 import java.io.InputStreamReader;
00029 
00030 import org.objectweb.cjdbc.common.i18n.ConsoleTranslate;
00031 import org.objectweb.cjdbc.console.text.module.AbstractConsoleModule;
00032 
00033 /**
00034  * This class defines a Native
00035  * 
00036  * @author <a href="mailto:Nicolas.Modrzyk@inria.fr">Nicolas Modrzyk </a>
00037  * @version 1.0
00038  */
00039 public class Native extends ConsoleCommand
00040 {
00041 
00042   /**
00043    * Creates a new <code>Native.java</code> object
00044    * 
00045    * @param module the command is issued from
00046    */
00047   public Native(AbstractConsoleModule module)
00048   {
00049     super(module);
00050   }
00051 
00052   /**
00053    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#parse(java.lang.String)
00054    */
00055   public void parse(String commandText) throws Exception
00056   {
00057     // not used
00058     // see execute
00059   }
00060 
00061   /**
00062    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandName()
00063    */
00064   public String getCommandName()
00065   {
00066     return "native";
00067   }
00068 
00069   /**
00070    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#getCommandDescription()
00071    */
00072   public String getCommandDescription()
00073   {
00074     return ConsoleTranslate.get("console.command.native");
00075   }
00076 
00077   /**
00078    * @see org.objectweb.cjdbc.console.text.commands.ConsoleCommand#execute(java.lang.String)
00079    */
00080   public void execute(String commandText) throws Exception
00081   {
00082     Runtime rt = Runtime.getRuntime();
00083     Process proc = rt.exec(commandText.trim());
00084     proc.waitFor();
00085     BufferedReader in = new BufferedReader(new InputStreamReader(proc
00086         .getInputStream()));
00087     String line;
00088     while ((line = in.readLine()) != null)
00089       console.println(ConsoleTranslate.get("console.command.native.output",
00090           line));
00091   }
00092 }

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