| WorkflowInstanceServiceHttp.java |
1 /**
2 * Copyright (c) 2000-2007 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.portlet.workflow.service.http;
24
25 import com.liferay.portal.kernel.log.Log;
26 import com.liferay.portal.kernel.log.LogFactoryUtil;
27 import com.liferay.portal.kernel.util.LongWrapper;
28 import com.liferay.portal.kernel.util.MethodWrapper;
29 import com.liferay.portal.security.auth.HttpPrincipal;
30 import com.liferay.portal.service.http.TunnelUtil;
31
32 import com.liferay.portlet.workflow.service.WorkflowInstanceServiceUtil;
33
34 /**
35 * <a href="WorkflowInstanceServiceHttp.java.html"><b><i>View Source</i></b></a>
36 *
37 * <p>
38 * ServiceBuilder generated this class. Modifications in this class will be overwritten
39 * the next time is generated.
40 * </p>
41 *
42 * <p>
43 * This class provides a HTTP utility for the <code>com.liferay.portlet.workflow.service.WorkflowInstanceServiceUtil</code>
44 * service utility. The static methods of this class calls the same methods of the
45 * service utility. However, the signatures are different because it requires an
46 * additional <code>com.liferay.portal.security.auth.HttpPrincipal</code> parameter.
47 * </p>
48 *
49 * <p>
50 * The benefits of using the HTTP utility is that it is fast and allows for tunneling
51 * without the cost of serializing to text. The drawback is that it only works with
52 * Java.
53 * </p>
54 *
55 * <p>
56 * Set the property <code>tunnel.servlet.hosts.allowed</code> in portal.properties
57 * to configure security.
58 * </p>
59 *
60 * <p>
61 * The HTTP utility is only generated for remote services.
62 * </p>
63 *
64 * @author Brian Wing Shun Chan
65 *
66 * @see com.liferay.portal.security.auth.HttpPrincipal
67 * @see com.liferay.portlet.workflow.service.WorkflowInstanceServiceUtil
68 * @see com.liferay.portlet.workflow.service.http.WorkflowInstanceServiceSoap
69 *
70 */
71 public class WorkflowInstanceServiceHttp {
72 public static com.liferay.portlet.workflow.model.WorkflowInstance addInstance(
73 HttpPrincipal httpPrincipal, long definitionId)
74 throws com.liferay.portal.SystemException,
75 com.liferay.portal.PortalException {
76 try {
77 Object paramObj0 = new LongWrapper(definitionId);
78 MethodWrapper methodWrapper = new MethodWrapper(WorkflowInstanceServiceUtil.class.getName(),
79 "addInstance", new Object[] { paramObj0 });
80 Object returnObj = null;
81
82 try {
83 returnObj = TunnelUtil.invoke(httpPrincipal, methodWrapper);
84 }
85 catch (Exception e) {
86 if (e instanceof com.liferay.portal.SystemException) {
87 throw (com.liferay.portal.SystemException)e;
88 }
89
90 if (e instanceof com.liferay.portal.PortalException) {
91 throw (com.liferay.portal.PortalException)e;
92 }
93
94 throw new com.liferay.portal.SystemException(e);
95 }
96
97 return (com.liferay.portlet.workflow.model.WorkflowInstance)returnObj;
98 }
99 catch (com.liferay.portal.SystemException se) {
100 _log.error(se, se);
101 throw se;
102 }
103 }
104
105 public static void signalInstance(HttpPrincipal httpPrincipal,
106 long instanceId)
107 throws com.liferay.portal.SystemException,
108 com.liferay.portal.PortalException {
109 try {
110 Object paramObj0 = new LongWrapper(instanceId);
111 MethodWrapper methodWrapper = new MethodWrapper(WorkflowInstanceServiceUtil.class.getName(),
112 "signalInstance", new Object[] { paramObj0 });
113
114 try {
115 TunnelUtil.invoke(httpPrincipal, methodWrapper);
116 }
117 catch (Exception e) {
118 if (e instanceof com.liferay.portal.SystemException) {
119 throw (com.liferay.portal.SystemException)e;
120 }
121
122 if (e instanceof com.liferay.portal.PortalException) {
123 throw (com.liferay.portal.PortalException)e;
124 }
125
126 throw new com.liferay.portal.SystemException(e);
127 }
128 }
129 catch (com.liferay.portal.SystemException se) {
130 _log.error(se, se);
131 throw se;
132 }
133 }
134
135 public static void signalToken(HttpPrincipal httpPrincipal,
136 long instanceId, long tokenId)
137 throws com.liferay.portal.SystemException,
138 com.liferay.portal.PortalException {
139 try {
140 Object paramObj0 = new LongWrapper(instanceId);
141 Object paramObj1 = new LongWrapper(tokenId);
142 MethodWrapper methodWrapper = new MethodWrapper(WorkflowInstanceServiceUtil.class.getName(),
143 "signalToken", new Object[] { paramObj0, paramObj1 });
144
145 try {
146 TunnelUtil.invoke(httpPrincipal, methodWrapper);
147 }
148 catch (Exception e) {
149 if (e instanceof com.liferay.portal.SystemException) {
150 throw (com.liferay.portal.SystemException)e;
151 }
152
153 if (e instanceof com.liferay.portal.PortalException) {
154 throw (com.liferay.portal.PortalException)e;
155 }
156
157 throw new com.liferay.portal.SystemException(e);
158 }
159 }
160 catch (com.liferay.portal.SystemException se) {
161 _log.error(se, se);
162 throw se;
163 }
164 }
165
166 private static Log _log = LogFactoryUtil.getLog(WorkflowInstanceServiceHttp.class);
167 }