| HookDeployer.java |
1 /**
2 * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a copy
5 * of this software and associated documentation files (the "Software"), to deal
6 * in the Software without restriction, including without limitation the rights
7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 * copies of the Software, and to permit persons to whom the Software is
9 * furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20 * SOFTWARE.
21 */
22
23 package com.liferay.portal.tools.deploy;
24
25 import com.liferay.portal.kernel.plugin.PluginPackage;
26 import com.liferay.portal.kernel.util.ServerDetector;
27 import com.liferay.portal.util.InitUtil;
28
29 import java.io.File;
30
31 import java.util.ArrayList;
32 import java.util.List;
33
34 /**
35 * <a href="HookDeployer.java.html"><b><i>View Source</i></b></a>
36 *
37 * @author Brian Wing Shun Chan
38 */
39 public class HookDeployer extends BaseDeployer {
40
41 public static void main(String[] args) {
42 InitUtil.initWithSpring();
43
44 List<String> wars = new ArrayList<String>();
45 List<String> jars = new ArrayList<String>();
46
47 for (String arg : args) {
48 if (arg.endsWith(".war")) {
49 wars.add(arg);
50 }
51 else if (arg.endsWith(".jar")) {
52 jars.add(arg);
53 }
54 }
55
56 new HookDeployer(wars, jars);
57 }
58
59 protected HookDeployer() {
60 }
61
62 protected HookDeployer(List<String> wars, List<String> jars) {
63 super(wars, jars);
64 }
65
66 protected void copyXmls(
67 File srcFile, String displayName, PluginPackage pluginPackage)
68 throws Exception {
69
70 super.copyXmls(srcFile, displayName, pluginPackage);
71
72 if (appServerType.equals(ServerDetector.TOMCAT_ID)) {
73 copyDependencyXml("context.xml", srcFile + "/META-INF");
74 }
75 }
76
77 protected String getExtraContent(
78 double webXmlVersion, File srcFile, String displayName)
79 throws Exception {
80
81 StringBuilder sb = new StringBuilder();
82
83 String extraContent = super.getExtraContent(
84 webXmlVersion, srcFile, displayName);
85
86 sb.append(extraContent);
87
88 // HookContextListener
89
90 sb.append("<listener>");
91 sb.append("<listener-class>");
92 sb.append("com.liferay.portal.kernel.servlet.HookContextListener");
93 sb.append("</listener-class>");
94 sb.append("</listener>");
95
96 return sb.toString();
97 }
98
99 }