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.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.BooleanWrapper;
28  import com.liferay.portal.kernel.util.LongWrapper;
29  import com.liferay.portal.kernel.util.MethodWrapper;
30  import com.liferay.portal.kernel.util.NullWrapper;
31  import com.liferay.portal.security.auth.HttpPrincipal;
32  import com.liferay.portal.service.LayoutSetServiceUtil;
33  
34  /**
35   * <a href="LayoutSetServiceHttp.java.html"><b><i>View Source</i></b></a>
36   *
37   * <p>
38   * ServiceBuilder generated this class. Modifications in this class will be
39   * overwritten the next time is generated.
40   * </p>
41   *
42   * <p>
43   * This class provides a HTTP utility for the
44   * <code>com.liferay.portal.service.LayoutSetServiceUtil</code> service
45   * utility. The static methods of this class calls the same methods of the
46   * service utility. However, the signatures are different because it requires an
47   * additional <code>com.liferay.portal.security.auth.HttpPrincipal</code>
48   * parameter.
49   * </p>
50   *
51   * <p>
52   * The benefits of using the HTTP utility is that it is fast and allows for
53   * tunneling without the cost of serializing to text. The drawback is that it
54   * only works with Java.
55   * </p>
56   *
57   * <p>
58   * Set the property <code>tunnel.servlet.hosts.allowed</code> in
59   * portal.properties to configure security.
60   * </p>
61   *
62   * <p>
63   * The HTTP utility is only generated for remote services.
64   * </p>
65   *
66   * @author Brian Wing Shun Chan
67   *
68   * @see com.liferay.portal.security.auth.HttpPrincipal
69   * @see com.liferay.portal.service.LayoutSetServiceUtil
70   * @see com.liferay.portal.service.http.LayoutSetServiceSoap
71   *
72   */
73  public class LayoutSetServiceHttp {
74      public static void updateLogo(HttpPrincipal httpPrincipal, long groupId,
75          boolean privateLayout, boolean logo, java.io.File file)
76          throws com.liferay.portal.PortalException,
77              com.liferay.portal.SystemException {
78          try {
79              Object paramObj0 = new LongWrapper(groupId);
80  
81              Object paramObj1 = new BooleanWrapper(privateLayout);
82  
83              Object paramObj2 = new BooleanWrapper(logo);
84  
85              Object paramObj3 = file;
86  
87              if (file == null) {
88                  paramObj3 = new NullWrapper("java.io.File");
89              }
90  
91              MethodWrapper methodWrapper = new MethodWrapper(LayoutSetServiceUtil.class.getName(),
92                      "updateLogo",
93                      new Object[] { paramObj0, paramObj1, paramObj2, paramObj3 });
94  
95              try {
96                  TunnelUtil.invoke(httpPrincipal, methodWrapper);
97              }
98              catch (Exception e) {
99                  if (e instanceof com.liferay.portal.PortalException) {
100                     throw (com.liferay.portal.PortalException)e;
101                 }
102 
103                 if (e instanceof com.liferay.portal.SystemException) {
104                     throw (com.liferay.portal.SystemException)e;
105                 }
106 
107                 throw new com.liferay.portal.SystemException(e);
108             }
109         }
110         catch (com.liferay.portal.SystemException se) {
111             _log.error(se, se);
112 
113             throw se;
114         }
115     }
116 
117     public static com.liferay.portal.model.LayoutSet updateLookAndFeel(
118         HttpPrincipal httpPrincipal, long groupId, boolean privateLayout,
119         java.lang.String themeId, java.lang.String colorSchemeId,
120         java.lang.String css, boolean wapTheme)
121         throws com.liferay.portal.PortalException,
122             com.liferay.portal.SystemException {
123         try {
124             Object paramObj0 = new LongWrapper(groupId);
125 
126             Object paramObj1 = new BooleanWrapper(privateLayout);
127 
128             Object paramObj2 = themeId;
129 
130             if (themeId == null) {
131                 paramObj2 = new NullWrapper("java.lang.String");
132             }
133 
134             Object paramObj3 = colorSchemeId;
135 
136             if (colorSchemeId == null) {
137                 paramObj3 = new NullWrapper("java.lang.String");
138             }
139 
140             Object paramObj4 = css;
141 
142             if (css == null) {
143                 paramObj4 = new NullWrapper("java.lang.String");
144             }
145 
146             Object paramObj5 = new BooleanWrapper(wapTheme);
147 
148             MethodWrapper methodWrapper = new MethodWrapper(LayoutSetServiceUtil.class.getName(),
149                     "updateLookAndFeel",
150                     new Object[] {
151                         paramObj0, paramObj1, paramObj2, paramObj3, paramObj4,
152                         paramObj5
153                     });
154 
155             Object returnObj = null;
156 
157             try {
158                 returnObj = TunnelUtil.invoke(httpPrincipal, methodWrapper);
159             }
160             catch (Exception e) {
161                 if (e instanceof com.liferay.portal.PortalException) {
162                     throw (com.liferay.portal.PortalException)e;
163                 }
164 
165                 if (e instanceof com.liferay.portal.SystemException) {
166                     throw (com.liferay.portal.SystemException)e;
167                 }
168 
169                 throw new com.liferay.portal.SystemException(e);
170             }
171 
172             return (com.liferay.portal.model.LayoutSet)returnObj;
173         }
174         catch (com.liferay.portal.SystemException se) {
175             _log.error(se, se);
176 
177             throw se;
178         }
179     }
180 
181     public static com.liferay.portal.model.LayoutSet updateVirtualHost(
182         HttpPrincipal httpPrincipal, long groupId, boolean privateLayout,
183         java.lang.String virtualHost)
184         throws com.liferay.portal.PortalException,
185             com.liferay.portal.SystemException {
186         try {
187             Object paramObj0 = new LongWrapper(groupId);
188 
189             Object paramObj1 = new BooleanWrapper(privateLayout);
190 
191             Object paramObj2 = virtualHost;
192 
193             if (virtualHost == null) {
194                 paramObj2 = new NullWrapper("java.lang.String");
195             }
196 
197             MethodWrapper methodWrapper = new MethodWrapper(LayoutSetServiceUtil.class.getName(),
198                     "updateVirtualHost",
199                     new Object[] { paramObj0, paramObj1, paramObj2 });
200 
201             Object returnObj = null;
202 
203             try {
204                 returnObj = TunnelUtil.invoke(httpPrincipal, methodWrapper);
205             }
206             catch (Exception e) {
207                 if (e instanceof com.liferay.portal.PortalException) {
208                     throw (com.liferay.portal.PortalException)e;
209                 }
210 
211                 if (e instanceof com.liferay.portal.SystemException) {
212                     throw (com.liferay.portal.SystemException)e;
213                 }
214 
215                 throw new com.liferay.portal.SystemException(e);
216             }
217 
218             return (com.liferay.portal.model.LayoutSet)returnObj;
219         }
220         catch (com.liferay.portal.SystemException se) {
221             _log.error(se, se);
222 
223             throw se;
224         }
225     }
226 
227     private static Log _log = LogFactoryUtil.getLog(LayoutSetServiceHttp.class);
228 }