PortletServiceJSON.java |
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.JSONObject; 23 import com.liferay.portal.service.PortletServiceUtil; 24 25 /** 26 * <a href="PortletServiceJSON.java.html"><b><i>View Source</i></b></a> 27 * 28 * <p> 29 * ServiceBuilder generated this class. Modifications in this class will be 30 * overwritten the next time is generated. 31 * </p> 32 * 33 * <p> 34 * This class provides a JSON utility for the 35 * <code>com.liferay.portal.service.PortletServiceUtil</code> 36 * service utility. The static methods of this class calls the same methods of 37 * the service utility. However, the signatures are different because it is 38 * difficult for JSON to support certain types. 39 * </p> 40 * 41 * <p> 42 * ServiceBuilder follows certain rules in translating the methods. For example, 43 * if the method in the service utility returns a <code>java.util.List</code>, 44 * that is translated to a 45 * <code>com.liferay.portal.kernel.json.JSONArray</code>. If the method in the 46 * service utility returns a <code>com.liferay.portal.model.Portlet</code>, 47 * that is translated to a 48 * <code>com.liferay.portal.kernel.json.JSONObject</code>. Methods that JSON 49 * cannot safely use are skipped. The logic for the translation is encapsulated 50 * in <code>com.liferay.portal.service.http.PortletJSONSerializer</code>. 51 * </p> 52 * 53 * <p> 54 * This allows you to call the the backend services directly from JavaScript. 55 * See <code>portal-web/docroot/html/portlet/tags_admin/unpacked.js</code> for a 56 * reference of how that portlet uses the generated JavaScript in 57 * <code>portal-web/docroot/html/js/service.js</code> to call the backend 58 * services directly from JavaScript. 59 * </p> 60 * 61 * <p> 62 * The JSON utility is only generated for remote services. 63 * </p> 64 * 65 * @author Brian Wing Shun Chan 66 * 67 * @see com.liferay.portal.service.PortletServiceUtil 68 * @see com.liferay.portal.service.http.PortletJSONSerializer 69 * 70 */ 71 public class PortletServiceJSON { 72 public static com.liferay.portal.kernel.json.JSONArray getWARPortlets() 73 throws java.rmi.RemoteException { 74 com.liferay.portal.kernel.json.JSONArray returnValue = PortletServiceUtil.getWARPortlets(); 75 76 return returnValue; 77 } 78 79 public static JSONObject updatePortlet(long companyId, 80 java.lang.String portletId, java.lang.String roles, boolean active) 81 throws java.rmi.RemoteException, com.liferay.portal.PortalException, 82 com.liferay.portal.SystemException { 83 com.liferay.portal.model.Portlet returnValue = PortletServiceUtil.updatePortlet(companyId, 84 portletId, roles, active); 85 86 return PortletJSONSerializer.toJSONObject(returnValue); 87 } 88 }