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.json.JSONObject;
26  import com.liferay.portal.service.LayoutServiceUtil;
27  
28  /**
29   * <a href="LayoutServiceJSON.java.html"><b><i>View Source</i></b></a>
30   *
31   * <p>
32   * ServiceBuilder generated this class. Modifications in this class will be
33   * overwritten the next time is generated.
34   * </p>
35   *
36   * <p>
37   * This class provides a JSON utility for the
38   * <code>com.liferay.portal.service.LayoutServiceUtil</code>
39   * service utility. The static methods of this class calls the same methods of
40   * the service utility. However, the signatures are different because it is
41   * difficult for JSON to support certain types.
42   * </p>
43   *
44   * <p>
45   * ServiceBuilder follows certain rules in translating the methods. For example,
46   * if the method in the service utility returns a <code>java.util.List</code>,
47   * that is translated to a
48   * <code>com.liferay.portal.kernel.json.JSONArray</code>. If the method in the
49   * service utility returns a <code>com.liferay.portal.model.Layout</code>,
50   * that is translated to a
51   * <code>com.liferay.portal.kernel.json.JSONObject</code>. Methods that JSON
52   * cannot safely use are skipped. The logic for the translation is encapsulated
53   * in <code>com.liferay.portal.service.http.LayoutJSONSerializer</code>.
54   * </p>
55   *
56   * <p>
57   * This allows you to call the the backend services directly from JavaScript.
58   * See <code>portal-web/docroot/html/portlet/tags_admin/unpacked.js</code> for a
59   * reference of how that portlet uses the generated JavaScript in
60   * <code>portal-web/docroot/html/js/service.js</code> to call the backend
61   * services directly from JavaScript.
62   * </p>
63   *
64   * <p>
65   * The JSON utility is only generated for remote services.
66   * </p>
67   *
68   * @author Brian Wing Shun Chan
69   *
70   * @see com.liferay.portal.service.LayoutServiceUtil
71   * @see com.liferay.portal.service.http.LayoutJSONSerializer
72   *
73   */
74  public class LayoutServiceJSON {
75      public static JSONObject addLayout(long groupId, boolean privateLayout,
76          long parentLayoutId, java.lang.String name, java.lang.String title,
77          java.lang.String description, java.lang.String type, boolean hidden,
78          java.lang.String friendlyURL)
79          throws com.liferay.portal.PortalException,
80              com.liferay.portal.SystemException {
81          com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.addLayout(groupId,
82                  privateLayout, parentLayoutId, name, title, description, type,
83                  hidden, friendlyURL);
84  
85          return LayoutJSONSerializer.toJSONObject(returnValue);
86      }
87  
88      public static void deleteLayout(long plid)
89          throws com.liferay.portal.PortalException,
90              com.liferay.portal.SystemException {
91          LayoutServiceUtil.deleteLayout(plid);
92      }
93  
94      public static void deleteLayout(long groupId, boolean privateLayout,
95          long layoutId)
96          throws com.liferay.portal.PortalException,
97              com.liferay.portal.SystemException {
98          LayoutServiceUtil.deleteLayout(groupId, privateLayout, layoutId);
99      }
100 
101     public static java.lang.String getLayoutName(long groupId,
102         boolean privateLayout, long layoutId, java.lang.String languageId)
103         throws com.liferay.portal.PortalException,
104             com.liferay.portal.SystemException {
105         java.lang.String returnValue = LayoutServiceUtil.getLayoutName(groupId,
106                 privateLayout, layoutId, languageId);
107 
108         return returnValue;
109     }
110 
111     public static com.liferay.portal.model.LayoutReference[] getLayoutReferences(
112         long companyId, java.lang.String portletId,
113         java.lang.String preferencesKey, java.lang.String preferencesValue)
114         throws com.liferay.portal.SystemException {
115         com.liferay.portal.model.LayoutReference[] returnValue = LayoutServiceUtil.getLayoutReferences(companyId,
116                 portletId, preferencesKey, preferencesValue);
117 
118         return returnValue;
119     }
120 
121     public static void setLayouts(long groupId, boolean privateLayout,
122         long parentLayoutId, long[] layoutIds)
123         throws com.liferay.portal.PortalException,
124             com.liferay.portal.SystemException {
125         LayoutServiceUtil.setLayouts(groupId, privateLayout, parentLayoutId,
126             layoutIds);
127     }
128 
129     public static void unschedulePublishToLive(long groupId,
130         java.lang.String jobName, java.lang.String groupName)
131         throws com.liferay.portal.PortalException,
132             com.liferay.portal.SystemException {
133         LayoutServiceUtil.unschedulePublishToLive(groupId, jobName, groupName);
134     }
135 
136     public static void unschedulePublishToRemote(long groupId,
137         java.lang.String jobName, java.lang.String groupName)
138         throws com.liferay.portal.PortalException,
139             com.liferay.portal.SystemException {
140         LayoutServiceUtil.unschedulePublishToRemote(groupId, jobName, groupName);
141     }
142 
143     public static JSONObject updateLayout(long groupId, boolean privateLayout,
144         long layoutId, java.lang.String typeSettings)
145         throws com.liferay.portal.PortalException,
146             com.liferay.portal.SystemException {
147         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateLayout(groupId,
148                 privateLayout, layoutId, typeSettings);
149 
150         return LayoutJSONSerializer.toJSONObject(returnValue);
151     }
152 
153     public static JSONObject updateLookAndFeel(long groupId,
154         boolean privateLayout, long layoutId, java.lang.String themeId,
155         java.lang.String colorSchemeId, java.lang.String css, boolean wapTheme)
156         throws com.liferay.portal.PortalException,
157             com.liferay.portal.SystemException {
158         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateLookAndFeel(groupId,
159                 privateLayout, layoutId, themeId, colorSchemeId, css, wapTheme);
160 
161         return LayoutJSONSerializer.toJSONObject(returnValue);
162     }
163 
164     public static JSONObject updateName(long plid, java.lang.String name,
165         java.lang.String languageId)
166         throws com.liferay.portal.PortalException,
167             com.liferay.portal.SystemException {
168         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateName(plid,
169                 name, languageId);
170 
171         return LayoutJSONSerializer.toJSONObject(returnValue);
172     }
173 
174     public static JSONObject updateName(long groupId, boolean privateLayout,
175         long layoutId, java.lang.String name, java.lang.String languageId)
176         throws com.liferay.portal.PortalException,
177             com.liferay.portal.SystemException {
178         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateName(groupId,
179                 privateLayout, layoutId, name, languageId);
180 
181         return LayoutJSONSerializer.toJSONObject(returnValue);
182     }
183 
184     public static JSONObject updateParentLayoutId(long plid, long parentPlid)
185         throws com.liferay.portal.PortalException,
186             com.liferay.portal.SystemException {
187         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateParentLayoutId(plid,
188                 parentPlid);
189 
190         return LayoutJSONSerializer.toJSONObject(returnValue);
191     }
192 
193     public static JSONObject updateParentLayoutId(long groupId,
194         boolean privateLayout, long layoutId, long parentLayoutId)
195         throws com.liferay.portal.PortalException,
196             com.liferay.portal.SystemException {
197         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateParentLayoutId(groupId,
198                 privateLayout, layoutId, parentLayoutId);
199 
200         return LayoutJSONSerializer.toJSONObject(returnValue);
201     }
202 
203     public static JSONObject updatePriority(long plid, int priority)
204         throws com.liferay.portal.PortalException,
205             com.liferay.portal.SystemException {
206         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updatePriority(plid,
207                 priority);
208 
209         return LayoutJSONSerializer.toJSONObject(returnValue);
210     }
211 
212     public static JSONObject updatePriority(long groupId,
213         boolean privateLayout, long layoutId, int priority)
214         throws com.liferay.portal.PortalException,
215             com.liferay.portal.SystemException {
216         com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updatePriority(groupId,
217                 privateLayout, layoutId, priority);
218 
219         return LayoutJSONSerializer.toJSONObject(returnValue);
220     }
221 }