| MBCategoryServiceJSON.java |
1 /**
2 * Copyright (c) 2000-2008 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.messageboards.service.http;
24
25 import com.liferay.portlet.messageboards.service.MBCategoryServiceUtil;
26
27 import org.json.JSONArray;
28 import org.json.JSONObject;
29
30 /**
31 * <a href="MBCategoryServiceJSON.java.html"><b><i>View Source</i></b></a>
32 *
33 * <p>
34 * ServiceBuilder generated this class. Modifications in this class will be
35 * overwritten the next time is generated.
36 * </p>
37 *
38 * <p>
39 * This class provides a JSON utility for the
40 * <code>com.liferay.portlet.messageboards.service.MBCategoryServiceUtil</code>
41 * service utility. The static methods of this class calls the same methods of
42 * the service utility. However, the signatures are different because it is
43 * difficult for JSON to support certain types.
44 * </p>
45 *
46 * <p>
47 * ServiceBuilder follows certain rules in translating the methods. For example,
48 * if the method in the service utility returns a <code>java.util.List</code>,
49 * that is translated to a <code>org.json.JSONArray</code>. If the method in the
50 * service utility returns a <code>com.liferay.portlet.messageboards.model.MBCategory</code>,
51 * that is translated to a <code>org.json.JSONObject</code>. Methods that JSON
52 * cannot safely use are skipped. The logic for the translation is encapsulated
53 * in <code>com.liferay.portlet.messageboards.service.http.MBCategoryJSONSerializer</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.portlet.messageboards.service.MBCategoryServiceUtil
71 * @see com.liferay.portlet.messageboards.service.http.MBCategoryJSONSerializer
72 *
73 */
74 public class MBCategoryServiceJSON {
75 public static JSONObject addCategory(long plid, long parentCategoryId,
76 java.lang.String name, java.lang.String description,
77 java.lang.String[] communityPermissions,
78 java.lang.String[] guestPermissions)
79 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
80 com.liferay.portal.PortalException {
81 com.liferay.portlet.messageboards.model.MBCategory returnValue = MBCategoryServiceUtil.addCategory(plid,
82 parentCategoryId, name, description, communityPermissions,
83 guestPermissions);
84
85 return MBCategoryJSONSerializer.toJSONObject(returnValue);
86 }
87
88 public static void deleteCategory(long categoryId)
89 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
90 com.liferay.portal.PortalException {
91 MBCategoryServiceUtil.deleteCategory(categoryId);
92 }
93
94 public static JSONObject getCategory(long categoryId)
95 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
96 com.liferay.portal.PortalException {
97 com.liferay.portlet.messageboards.model.MBCategory returnValue = MBCategoryServiceUtil.getCategory(categoryId);
98
99 return MBCategoryJSONSerializer.toJSONObject(returnValue);
100 }
101
102 public static JSONArray getCategories(long groupId, long parentCategoryId,
103 int begin, int end)
104 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
105 com.liferay.portal.PortalException {
106 java.util.List returnValue = MBCategoryServiceUtil.getCategories(groupId,
107 parentCategoryId, begin, end);
108
109 return MBCategoryJSONSerializer.toJSONArray(returnValue);
110 }
111
112 public static int getCategoriesCount(long groupId, long parentCategoryId)
113 throws java.rmi.RemoteException, com.liferay.portal.SystemException {
114 int returnValue = MBCategoryServiceUtil.getCategoriesCount(groupId,
115 parentCategoryId);
116
117 return returnValue;
118 }
119
120 public static void subscribeCategory(long categoryId)
121 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
122 com.liferay.portal.PortalException {
123 MBCategoryServiceUtil.subscribeCategory(categoryId);
124 }
125
126 public static void unsubscribeCategory(long categoryId)
127 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
128 com.liferay.portal.PortalException {
129 MBCategoryServiceUtil.unsubscribeCategory(categoryId);
130 }
131
132 public static JSONObject updateCategory(long categoryId,
133 long parentCategoryId, java.lang.String name,
134 java.lang.String description, boolean mergeWithParentCategory)
135 throws java.rmi.RemoteException, com.liferay.portal.SystemException,
136 com.liferay.portal.PortalException {
137 com.liferay.portlet.messageboards.model.MBCategory returnValue = MBCategoryServiceUtil.updateCategory(categoryId,
138 parentCategoryId, name, description, mergeWithParentCategory);
139
140 return MBCategoryJSONSerializer.toJSONObject(returnValue);
141 }
142 }