public class HttpdApplicationTargetData implements TargetData {\r
private HttpdServer webServer;\r
private String relativePath;\r
+ private String targetRootPath;\r
\r
public HttpdServer getWebServer() {\r
return webServer;\r
return relativePath;\r
}\r
\r
+ /**\r
+ * If targetRootLocation not set, used to build the targetRootLocation,\r
+ * relative to the webserver base.\r
+ */\r
public void setRelativePath(String relativePath) {\r
this.relativePath = relativePath;\r
}\r
\r
+ public String getTargetRootPath() {\r
+ return targetRootPath;\r
+ }\r
+\r
+ public void setTargetRootPath(String targetRootPath) {\r
+ this.targetRootPath = targetRootPath;\r
+ }\r
+\r
public URL getTargetBaseUrl() {\r
try {\r
URL wsUrl = getWebServer().getBaseUrl();\r
}\r
\r
public File getTargetRootLocation() {\r
- HttpdServerTargetData targetData = (HttpdServerTargetData) getWebServer()\r
- .getTargetData();\r
- String path = targetData.getServerRoot() + File.separator\r
- + getRelativePath();\r
- return new File(path);\r
+ if (targetRootPath != null && !targetRootPath.equals("")) {\r
+ return new File(targetRootPath);\r
+ } else {\r
+ HttpdServerTargetData targetData = (HttpdServerTargetData) getWebServer()\r
+ .getTargetData();\r
+ String path = targetData.getServerRoot() + File.separator\r
+ + getRelativePath();\r
+ return new File(path);\r
+ }\r
}\r
\r
}\r
\r
import org.argeo.slc.core.SlcException;\r
import org.argeo.slc.core.build.Distribution;\r
+import org.argeo.slc.core.deploy.DeploymentData;\r
+import org.argeo.slc.core.deploy.TargetData;\r
\r
public class HttpdServer implements WebServer {\r
private HttpdServerTargetData targetData;\r
return null;\r
}\r
\r
- public HttpdServerDeploymentData getDeploymentData() {\r
+ public DeploymentData getDeploymentData() {\r
return deploymentData;\r
}\r
\r
- public HttpdServerTargetData getTargetData() {\r
+ public TargetData getTargetData() {\r
return targetData;\r
}\r
\r
- public void setTargetData(HttpdServerTargetData targetData) {\r
- this.targetData = targetData;\r
+ public void setTargetData(TargetData targetData) {\r
+ this.targetData = (HttpdServerTargetData)targetData;\r
}\r
\r
- public void setDeploymentData(HttpdServerDeploymentData deploymentData) {\r
- this.deploymentData = deploymentData;\r
+ public void setDeploymentData(DeploymentData deploymentData) {\r
+ this.deploymentData = (HttpdServerDeploymentData)deploymentData;\r
}\r
\r
}\r
public void start() {
runProcessAsync(createCommandLine("start"));
log.info("Started httpd server with root "
- + httpdServer.getTargetData().getServerRoot());
+ + getHttpdServerTargetData().getServerRoot());
}
public void stop() {
runProcessAsync(createCommandLine("stop"));
log.info("Stopped httpd server with root "
- + httpdServer.getTargetData().getServerRoot());
+ + getHttpdServerTargetData().getServerRoot());
}
protected String[] createCommandLine(String action) {
- String httpdPath = httpdServer.getTargetData().getExecutables()
+ String httpdPath = getHttpdServerTargetData().getExecutables()
.getExecutablePath("httpd");
String[] cmd = { httpdPath, "-d",
- httpdServer.getTargetData().getServerRoot(), "-f",
- httpdServer.getDeploymentData().getConfigFile(), "-k", action };
+ getHttpdServerTargetData().getServerRoot(), "-f",
+ getHttpdServerDeploymentData().getConfigFile(), "-k", action };
if (log.isDebugEnabled())
log.debug("Command line: " + Arrays.asList(cmd));
return cmd;
this.httpdServer = httpdServer;
}
+ protected HttpdServerDeploymentData getHttpdServerDeploymentData() {
+ return (HttpdServerDeploymentData) httpdServer.getDeploymentData();
+ }
+
+ protected HttpdServerTargetData getHttpdServerTargetData() {
+ return (HttpdServerTargetData) httpdServer.getTargetData();
+ }
}