X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.support%2Fsrc%2Forg%2Fargeo%2Fslc%2Fsupport%2Fdeploy%2FHttpdServerManager.java;fp=org.argeo.slc.support%2Fsrc%2Forg%2Fargeo%2Fslc%2Fsupport%2Fdeploy%2FHttpdServerManager.java;h=0000000000000000000000000000000000000000;hb=ecc22e604e47533c79de9cecdcdeacbc752cbff1;hp=20b78591f4a7cc658378b6272fbee85349bdc226;hpb=e07ded4632e53f8b8869763bc1f1f4091361e76e;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.support/src/org/argeo/slc/support/deploy/HttpdServerManager.java b/org.argeo.slc.support/src/org/argeo/slc/support/deploy/HttpdServerManager.java deleted file mode 100644 index 20b78591f..000000000 --- a/org.argeo.slc.support/src/org/argeo/slc/support/deploy/HttpdServerManager.java +++ /dev/null @@ -1,81 +0,0 @@ -package org.argeo.slc.support.deploy; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.util.Arrays; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.argeo.slc.SlcException; -import org.argeo.slc.deploy.DeployedSystemManager; - -public class HttpdServerManager implements DeployedSystemManager { - private final static Log log = LogFactory.getLog(HttpdServerManager.class); - - private HttpdServer httpdServer; - - public void start() { - runProcessAsync(createCommandLine("start")); - log.info("Started httpd server with root " - + getHttpdServerTargetData().getServerRoot()); - } - - public void stop() { - runProcessAsync(createCommandLine("stop")); - log.info("Stopped httpd server with root " - + getHttpdServerTargetData().getServerRoot()); - } - - protected String[] createCommandLine(String action) { - String httpdPath = getHttpdServerTargetData().getExecutables() - .getExecutablePath("httpd"); - String[] cmd = { httpdPath, "-d", - getHttpdServerTargetData().getServerRoot(), "-f", - getHttpdServerDeploymentData().getConfigFile(), "-k", action }; - if (log.isDebugEnabled()) - log.debug("Command line: " + Arrays.asList(cmd)); - return cmd; - } - - protected static void runProcessAsync(String... command) { - ProcessBuilder procBuilder = new ProcessBuilder(command); - procBuilder.redirectErrorStream(true); - try { - Process proc = procBuilder.start(); - final InputStream in = proc.getInputStream(); - Thread logThread = new Thread() { - - @Override - public void run() { - BufferedReader reader = new BufferedReader( - new InputStreamReader(in)); - String line = null; - try { - while ((line = reader.readLine()) != null) - log.info(line); - } catch (IOException e) { - log.error("Failed to read stdout", e); - } - } - }; - - logThread.start(); - } catch (IOException e) { - throw new SlcException("Could not run command", e); - } - } - - public void setDeployedSystem(HttpdServer httpdServer) { - this.httpdServer = httpdServer; - } - - protected HttpdServerDeploymentData getHttpdServerDeploymentData() { - return (HttpdServerDeploymentData) httpdServer.getDeploymentData(); - } - - protected HttpdServerTargetData getHttpdServerTargetData() { - return (HttpdServerTargetData) httpdServer.getTargetData(); - } -}