+++ /dev/null
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp. and others.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-
-Contributors:
- IBM Corporation - Initial implementation
- Klaus Hartlage - www.eclipseproject.de
-**********************************************************************/
-package net.sourceforge.phpeclipse.actions;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.text.MessageFormat;
-
-import net.sourceforge.phpdt.externaltools.launchConfigurations.ExternalToolsUtil;
-import net.sourceforge.phpeclipse.PHPeclipsePlugin;
-import net.sourceforge.phpeclipse.views.PHPConsole;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-
-public class PHPStartApacheAction implements IWorkbenchWindowActionDelegate {
- protected IWorkbenchWindow activeWindow = null;
-
- public void run(IAction action) {
- final IPreferenceStore store =
- PHPeclipsePlugin.getDefault().getPreferenceStore();
- String documentRoot = store.getString(PHPeclipsePlugin.DOCUMENTROOT_PREF);
- // replace backslash with slash in the DocumentRoot under Windows
- documentRoot = documentRoot.replace('\\', '/');
- String[] arguments = { documentRoot };
- MessageFormat form =
- new MessageFormat(store.getString(PHPeclipsePlugin.APACHE_START_PREF));
- execute(
- "apache_start",
- store.getString(PHPeclipsePlugin.APACHE_RUN_PREF),
- form.format(arguments),
- store.getBoolean(PHPeclipsePlugin.APACHE_START_BACKGROUND));
- }
-
- // public static void execute(String command, String consoleMessage) {
- // // MessageDialog.openInformation(activeWindow.getShell(), "Exec command: ", command);
- // try {
- // PHPConsole console = PHPConsole.getInstance();
- // console.write(consoleMessage + command + "\n");
- // Runtime runtime = Runtime.getRuntime();
- //
- // // runs the command
- // Process p = runtime.exec(command);
- //
- // if (PHPeclipsePlugin.getDefault().getPreferenceStore().getBoolean(PHPeclipsePlugin.SHOW_OUTPUT_IN_CONSOLE) == true) {
- //
- // OutputThread out = new OutputThread(p.getInputStream(), console);
- // OutputThread err = new OutputThread(p.getErrorStream(), console);
- // out.start();
- // err.start();
- //
- // }
- //
- // } catch (IOException e) {
- //
- // System.err.println("Problem");
- // e.printStackTrace();
- //
- // }
- //
- // }
-
- /**
- * Executes an external progam and saves the LaunchConfiguration under external tools
- * @param command external tools command name
- * @param executable executable path i.e.c:\apache\apache.exe
- * @param arguments arguments for this configuration
- * @param background run this configuration in background mode
- */
- public static void execute(
- String command,
- String executable,
- String arguments,
- boolean background) {
- PHPConsole console = PHPConsole.getInstance();
- String consoleMessage;
- if (background) {
- consoleMessage =
- "run in background mode-"
- + command
- + ": "
- + executable
- + " "
- + arguments;
- } else {
- consoleMessage =
- "run in foreground mode-"
- + command
- + ": "
- + executable
- + " "
- + arguments;
- }
- console.write(consoleMessage + "\n");
-
- ExternalToolsUtil.execute(command, executable, arguments, background);
- // MessageDialog.openInformation(activeWindow.getShell(), "Exec command: ", command);
- // try {
- // PHPConsole console = PHPConsole.getInstance();
- // console.write(consoleMessage + command + "\n");
- //
- // ExternalToolsUtil.execute()
- // Runtime runtime = Runtime.getRuntime();
- //
- // // runs the command
- // Process p = runtime.exec(command);
- //
- // // gets the input stream to have the post-compile-time information
- // InputStream stream = p.getInputStream();
- //
- // // get the string from Stream
- // String consoleOutput = PHPConsole.getStringFromStream(stream);
- //
- // // prints out the information
- // console.write(consoleOutput);
- // return consoleOutput;
- //
- // } catch (IOException e) {
- //
- // System.err.println("Problem");
- // e.printStackTrace();
- //
- // }
- // return "";
- }
- public static String getParserOutput(String command, String consoleMessage) {
- // MessageDialog.openInformation(activeWindow.getShell(), "Exec command: ", command);
- try {
- PHPConsole console = null;
- try {
- console = PHPConsole.getInstance();
- if (console != null) {
- console.write(consoleMessage + command + "\n");
- }
- } catch (Throwable th) {
-
- }
-
- Runtime runtime = Runtime.getRuntime();
-
- // runs the command
- Process p = runtime.exec(command);
-
- // gets the input stream to have the post-compile-time information
- InputStream stream = p.getInputStream();
-
- // get the string from Stream
- String consoleOutput = PHPConsole.getStringFromStream(stream);
-
- // prints out the information
- if (console != null) {
- console.write(consoleOutput);
- }
- return consoleOutput;
-
- } catch (IOException e) {
-
- System.err.println("Problem");
- e.printStackTrace();
-
- }
- return "";
- }
-
- public void selectionChanged(IAction action, ISelection selection) {
-
- }
-
- public void init(IWorkbenchWindow window) {
- this.activeWindow = window;
- }
-
- public void dispose() {
-
- }
-
- // static class OutputThread extends Thread {
- // InputStream fInputStream;
- // PHPConsole console;
- //
- // OutputThread(InputStream inputStream, PHPConsole console) {
- // this.fInputStream = inputStream;
- // this.console = console;
- // }
- //
- // public void run() {
- // try {
- // BufferedReader bin = new BufferedReader(new InputStreamReader(fInputStream));
- //
- // String bufferRow;
- // while ((bufferRow = bin.readLine()) != null) {
- //
- // // prints out the information
- // console.write( bufferRow );
- //
- // }
- // bin.close();
- //
- // } catch (IOException e) {
- // MessageDialog.openError(null, "Error in output", e.toString());
- // } finally {
- //
- // }
- // }
- // }
-
-}