1
22
23 package com.liferay.portal.deploy.auto;
24
25 import com.liferay.portal.deploy.DeployUtil;
26 import com.liferay.portal.kernel.deploy.auto.AutoDeployException;
27 import com.liferay.portal.kernel.util.ServerDetector;
28 import com.liferay.portal.tools.PortletDeployer;
29 import com.liferay.portal.util.PrefsPropsUtil;
30 import com.liferay.portal.util.PropsUtil;
31 import com.liferay.portal.util.PropsValues;
32
33 import java.util.ArrayList;
34 import java.util.List;
35
36 import org.apache.commons.logging.Log;
37 import org.apache.commons.logging.LogFactory;
38
39
46 public class PortletAutoDeployer
47 extends PortletDeployer implements AutoDeployer {
48
49 public PortletAutoDeployer() {
50 try {
51 baseDir = PrefsPropsUtil.getString(
52 PropsUtil.AUTO_DEPLOY_DEPLOY_DIR,
53 PropsValues.AUTO_DEPLOY_DEPLOY_DIR);
54 destDir = DeployUtil.getAutoDeployDestDir();
55 appServerType = ServerDetector.getServerId();
56 portletTaglibDTD = DeployUtil.getResourcePath(
57 "liferay-portlet.tld");
58 unpackWar = PrefsPropsUtil.getBoolean(
59 PropsUtil.AUTO_DEPLOY_UNPACK_WAR,
60 PropsValues.AUTO_DEPLOY_UNPACK_WAR);
61 jbossPrefix = PrefsPropsUtil.getString(
62 PropsUtil.AUTO_DEPLOY_JBOSS_PREFIX,
63 PropsValues.AUTO_DEPLOY_JBOSS_PREFIX);
64 tomcatLibDir = PrefsPropsUtil.getString(
65 PropsUtil.AUTO_DEPLOY_TOMCAT_LIB_DIR,
66 PropsValues.AUTO_DEPLOY_TOMCAT_LIB_DIR);
67
68 List<String> jars = new ArrayList<String>();
69
70 jars.add(DeployUtil.getResourcePath("util-bridges.jar"));
71 jars.add(DeployUtil.getResourcePath("util-java.jar"));
72 jars.add(DeployUtil.getResourcePath("util-taglib.jar"));
73
74 this.jars = jars;
75
76 checkArguments();
77 }
78 catch (Exception e) {
79 _log.error(e);
80 }
81 }
82
83 public void autoDeploy(String file) throws AutoDeployException {
84 List<String> wars = new ArrayList<String>();
85
86 wars.add(file);
87
88 this.wars = wars;
89
90 try {
91 deploy();
92 }
93 catch (Exception e) {
94 throw new AutoDeployException(e);
95 }
96 }
97
98 private static Log _log = LogFactory.getLog(PortletAutoDeployer.class);
99
100 }