001
014
015 package com.liferay.portal.deploy.auto;
016
017 import com.liferay.portal.deploy.DeployUtil;
018 import com.liferay.portal.kernel.deploy.auto.AutoDeployException;
019 import com.liferay.portal.kernel.log.Log;
020 import com.liferay.portal.kernel.log.LogFactoryUtil;
021 import com.liferay.portal.kernel.util.PropsKeys;
022 import com.liferay.portal.kernel.util.ServerDetector;
023 import com.liferay.portal.kernel.util.StringPool;
024 import com.liferay.portal.tools.deploy.HookDeployer;
025 import com.liferay.portal.util.PrefsPropsUtil;
026 import com.liferay.portal.util.PropsValues;
027
028 import java.util.ArrayList;
029 import java.util.List;
030
031
034 public class HookAutoDeployer extends HookDeployer implements AutoDeployer {
035
036 public HookAutoDeployer() {
037 try {
038 baseDir = PrefsPropsUtil.getString(
039 PropsKeys.AUTO_DEPLOY_DEPLOY_DIR,
040 PropsValues.AUTO_DEPLOY_DEPLOY_DIR);
041 destDir = DeployUtil.getAutoDeployDestDir();
042 appServerType = ServerDetector.getServerId();
043 unpackWar = PrefsPropsUtil.getBoolean(
044 PropsKeys.AUTO_DEPLOY_UNPACK_WAR,
045 PropsValues.AUTO_DEPLOY_UNPACK_WAR);
046 filePattern = StringPool.BLANK;
047 jbossPrefix = PrefsPropsUtil.getString(
048 PropsKeys.AUTO_DEPLOY_JBOSS_PREFIX,
049 PropsValues.AUTO_DEPLOY_JBOSS_PREFIX);
050 tomcatLibDir = PrefsPropsUtil.getString(
051 PropsKeys.AUTO_DEPLOY_TOMCAT_LIB_DIR,
052 PropsValues.AUTO_DEPLOY_TOMCAT_LIB_DIR);
053
054 List<String> jars = new ArrayList<String>();
055
056 addExtJar(jars, "ext-util-java.jar");
057 addRequiredJar(jars, "util-java.jar");
058
059 this.jars = jars;
060
061 checkArguments();
062 }
063 catch (Exception e) {
064 _log.error(e);
065 }
066 }
067
068 public void autoDeploy(String file) throws AutoDeployException {
069 List<String> wars = new ArrayList<String>();
070
071 wars.add(file);
072
073 this.wars = wars;
074
075 try {
076 deploy();
077 }
078 catch (Exception e) {
079 throw new AutoDeployException(e);
080 }
081 }
082
083 private static Log _log = LogFactoryUtil.getLog(HookAutoDeployer.class);
084
085 }