1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portal.service.http;
21  
22  import com.liferay.portal.kernel.json.JSONArray;
23  import com.liferay.portal.kernel.json.JSONObject;
24  import com.liferay.portal.service.GroupServiceUtil;
25  
26  /**
27   * <a href="GroupServiceJSON.java.html"><b><i>View Source</i></b></a>
28   *
29   * <p>
30   * ServiceBuilder generated this class. Modifications in this class will be
31   * overwritten the next time is generated.
32   * </p>
33   *
34   * <p>
35   * This class provides a JSON utility for the
36   * <code>com.liferay.portal.service.GroupServiceUtil</code>
37   * service utility. The static methods of this class calls the same methods of
38   * the service utility. However, the signatures are different because it is
39   * difficult for JSON to support certain types.
40   * </p>
41   *
42   * <p>
43   * ServiceBuilder follows certain rules in translating the methods. For example,
44   * if the method in the service utility returns a <code>java.util.List</code>,
45   * that is translated to a
46   * <code>com.liferay.portal.kernel.json.JSONArray</code>. If the method in the
47   * service utility returns a <code>com.liferay.portal.model.Group</code>,
48   * that is translated to a
49   * <code>com.liferay.portal.kernel.json.JSONObject</code>. Methods that JSON
50   * cannot safely use are skipped. The logic for the translation is encapsulated
51   * in <code>com.liferay.portal.service.http.GroupJSONSerializer</code>.
52   * </p>
53   *
54   * <p>
55   * This allows you to call the the backend services directly from JavaScript.
56   * See <code>portal-web/docroot/html/portlet/tags_admin/unpacked.js</code> for a
57   * reference of how that portlet uses the generated JavaScript in
58   * <code>portal-web/docroot/html/js/service.js</code> to call the backend
59   * services directly from JavaScript.
60   * </p>
61   *
62   * <p>
63   * The JSON utility is only generated for remote services.
64   * </p>
65   *
66   * @author Brian Wing Shun Chan
67   *
68   * @see com.liferay.portal.service.GroupServiceUtil
69   * @see com.liferay.portal.service.http.GroupJSONSerializer
70   *
71   */
72  public class GroupServiceJSON {
73      public static JSONObject addGroup(java.lang.String name,
74          java.lang.String description, int type, java.lang.String friendlyURL,
75          boolean active)
76          throws java.rmi.RemoteException, com.liferay.portal.PortalException,
77              com.liferay.portal.SystemException {
78          com.liferay.portal.model.Group returnValue = GroupServiceUtil.addGroup(name,
79                  description, type, friendlyURL, active);
80  
81          return GroupJSONSerializer.toJSONObject(returnValue);
82      }
83  
84      public static JSONObject addGroup(long liveGroupId, java.lang.String name,
85          java.lang.String description, int type, java.lang.String friendlyURL,
86          boolean active)
87          throws java.rmi.RemoteException, com.liferay.portal.PortalException,
88              com.liferay.portal.SystemException {
89          com.liferay.portal.model.Group returnValue = GroupServiceUtil.addGroup(liveGroupId,
90                  name, description, type, friendlyURL, active);
91  
92          return GroupJSONSerializer.toJSONObject(returnValue);
93      }
94  
95      public static void addRoleGroups(long roleId, long[] groupIds)
96          throws java.rmi.RemoteException, com.liferay.portal.PortalException,
97              com.liferay.portal.SystemException {
98          GroupServiceUtil.addRoleGroups(roleId, groupIds);
99      }
100 
101     public static void deleteGroup(long groupId)
102         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
103             com.liferay.portal.SystemException {
104         GroupServiceUtil.deleteGroup(groupId);
105     }
106 
107     public static JSONObject getGroup(long groupId)
108         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
109             com.liferay.portal.SystemException {
110         com.liferay.portal.model.Group returnValue = GroupServiceUtil.getGroup(groupId);
111 
112         return GroupJSONSerializer.toJSONObject(returnValue);
113     }
114 
115     public static JSONObject getGroup(long companyId, java.lang.String name)
116         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
117             com.liferay.portal.SystemException {
118         com.liferay.portal.model.Group returnValue = GroupServiceUtil.getGroup(companyId,
119                 name);
120 
121         return GroupJSONSerializer.toJSONObject(returnValue);
122     }
123 
124     public static JSONArray getOrganizationsGroups(
125         java.util.List<com.liferay.portal.model.Organization> organizations)
126         throws java.rmi.RemoteException {
127         java.util.List<com.liferay.portal.model.Group> returnValue = GroupServiceUtil.getOrganizationsGroups(organizations);
128 
129         return GroupJSONSerializer.toJSONArray(returnValue);
130     }
131 
132     public static JSONArray getUserGroupsGroups(
133         java.util.List<com.liferay.portal.model.UserGroup> userGroups)
134         throws java.rmi.RemoteException {
135         java.util.List<com.liferay.portal.model.Group> returnValue = GroupServiceUtil.getUserGroupsGroups(userGroups);
136 
137         return GroupJSONSerializer.toJSONArray(returnValue);
138     }
139 
140     public static boolean hasUserGroup(long userId, long groupId)
141         throws java.rmi.RemoteException, com.liferay.portal.SystemException {
142         boolean returnValue = GroupServiceUtil.hasUserGroup(userId, groupId);
143 
144         return returnValue;
145     }
146 
147     public static JSONArray search(long companyId, java.lang.String name,
148         java.lang.String description, java.lang.String[] params, int start,
149         int end)
150         throws java.rmi.RemoteException, com.liferay.portal.SystemException {
151         java.util.List<com.liferay.portal.model.Group> returnValue = GroupServiceUtil.search(companyId,
152                 name, description, params, start, end);
153 
154         return GroupJSONSerializer.toJSONArray(returnValue);
155     }
156 
157     public static int searchCount(long companyId, java.lang.String name,
158         java.lang.String description, java.lang.String[] params)
159         throws java.rmi.RemoteException, com.liferay.portal.SystemException {
160         int returnValue = GroupServiceUtil.searchCount(companyId, name,
161                 description, params);
162 
163         return returnValue;
164     }
165 
166     public static void setRoleGroups(long roleId, long[] groupIds)
167         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
168             com.liferay.portal.SystemException {
169         GroupServiceUtil.setRoleGroups(roleId, groupIds);
170     }
171 
172     public static void unsetRoleGroups(long roleId, long[] groupIds)
173         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
174             com.liferay.portal.SystemException {
175         GroupServiceUtil.unsetRoleGroups(roleId, groupIds);
176     }
177 
178     public static JSONObject updateFriendlyURL(long groupId,
179         java.lang.String friendlyURL)
180         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
181             com.liferay.portal.SystemException {
182         com.liferay.portal.model.Group returnValue = GroupServiceUtil.updateFriendlyURL(groupId,
183                 friendlyURL);
184 
185         return GroupJSONSerializer.toJSONObject(returnValue);
186     }
187 
188     public static JSONObject updateGroup(long groupId, java.lang.String name,
189         java.lang.String description, int type, java.lang.String friendlyURL,
190         boolean active)
191         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
192             com.liferay.portal.SystemException {
193         com.liferay.portal.model.Group returnValue = GroupServiceUtil.updateGroup(groupId,
194                 name, description, type, friendlyURL, active);
195 
196         return GroupJSONSerializer.toJSONObject(returnValue);
197     }
198 
199     public static JSONObject updateGroup(long groupId,
200         java.lang.String typeSettings)
201         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
202             com.liferay.portal.SystemException {
203         com.liferay.portal.model.Group returnValue = GroupServiceUtil.updateGroup(groupId,
204                 typeSettings);
205 
206         return GroupJSONSerializer.toJSONObject(returnValue);
207     }
208 
209     public static JSONObject updateWorkflow(long groupId,
210         boolean workflowEnabled, int workflowStages,
211         java.lang.String workflowRoleNames)
212         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
213             com.liferay.portal.SystemException {
214         com.liferay.portal.model.Group returnValue = GroupServiceUtil.updateWorkflow(groupId,
215                 workflowEnabled, workflowStages, workflowRoleNames);
216 
217         return GroupJSONSerializer.toJSONObject(returnValue);
218     }
219 }