WorkflowDefinitionServiceJSON.java |
1 /** 2 * Copyright (c) 2000-2007 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.workflow.service.http; 24 25 import com.liferay.portlet.workflow.service.WorkflowDefinitionServiceUtil; 26 27 import org.json.JSONObject; 28 29 /** 30 * <a href="WorkflowDefinitionServiceJSON.java.html"><b><i>View Source</i></b></a> 31 * 32 * <p> 33 * ServiceBuilder generated this class. Modifications in this class will be overwritten 34 * the next time is generated. 35 * </p> 36 * 37 * <p> 38 * This class provides a JSON utility for the <code>com.liferay.portlet.workflow.service.WorkflowDefinitionServiceUtil</code> 39 * service utility. The static methods of this class calls the same methods of the 40 * service utility. However, the signatures are different because it is difficult 41 * 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>, that 47 * is translated to a <code>org.json.JSONArray</code>. If the method in the service 48 * utility returns a <code>com.liferay.portlet.workflow.model.WorkflowDefinition</code>, 49 * that is translated to a <code>org.json.JSONObject</code>. Methods that JSON cannot 50 * safely use are skipped. The logic for the translation is encapsulated in <code>com.liferay.portlet.workflow.service.http.WorkflowDefinitionJSONSerializer</code>. 51 * </p> 52 * 53 * <p> 54 * This allows you to call the the backend services directly from JavaScript. See 55 * <code>portal-web/docroot/html/portlet/tags_admin/unpacked.js</code> for a reference 56 * of how that portlet uses the generated JavaScript in <code>portal-web/docroot/html/js/service.js</code> 57 * to call the backend services directly from JavaScript. 58 * </p> 59 * 60 * <p> 61 * The JSON utility is only generated for remote services. 62 * </p> 63 * 64 * @author Brian Wing Shun Chan 65 * 66 * @see com.liferay.portlet.workflow.service.WorkflowDefinitionServiceUtil 67 * @see com.liferay.portlet.workflow.service.http.WorkflowDefinitionJSONSerializer 68 * 69 */ 70 public class WorkflowDefinitionServiceJSON { 71 public static JSONObject addDefinition(java.lang.String xml, 72 boolean addCommunityPermissions, boolean addGuestPermissions) 73 throws com.liferay.portal.SystemException, 74 com.liferay.portal.PortalException, java.rmi.RemoteException { 75 com.liferay.portlet.workflow.model.WorkflowDefinition returnValue = WorkflowDefinitionServiceUtil.addDefinition(xml, 76 addCommunityPermissions, addGuestPermissions); 77 78 return WorkflowDefinitionJSONSerializer.toJSONObject(returnValue); 79 } 80 81 public static JSONObject addDefinition(java.lang.String xml, 82 java.lang.String[] communityPermissions, 83 java.lang.String[] guestPermissions) 84 throws com.liferay.portal.SystemException, 85 com.liferay.portal.PortalException, java.rmi.RemoteException { 86 com.liferay.portlet.workflow.model.WorkflowDefinition returnValue = WorkflowDefinitionServiceUtil.addDefinition(xml, 87 communityPermissions, guestPermissions); 88 89 return WorkflowDefinitionJSONSerializer.toJSONObject(returnValue); 90 } 91 92 public static JSONObject addDefinition(java.lang.String xml, 93 java.lang.Boolean addCommunityPermissions, 94 java.lang.Boolean addGuestPermissions, 95 java.lang.String[] communityPermissions, 96 java.lang.String[] guestPermissions) 97 throws com.liferay.portal.SystemException, 98 com.liferay.portal.PortalException, java.rmi.RemoteException { 99 com.liferay.portlet.workflow.model.WorkflowDefinition returnValue = WorkflowDefinitionServiceUtil.addDefinition(xml, 100 addCommunityPermissions, addGuestPermissions, 101 communityPermissions, guestPermissions); 102 103 return WorkflowDefinitionJSONSerializer.toJSONObject(returnValue); 104 } 105 106 public static JSONObject getDefinition(long definitionId) 107 throws com.liferay.portal.SystemException, 108 com.liferay.portal.PortalException, java.rmi.RemoteException { 109 com.liferay.portlet.workflow.model.WorkflowDefinition returnValue = WorkflowDefinitionServiceUtil.getDefinition(definitionId); 110 111 return WorkflowDefinitionJSONSerializer.toJSONObject(returnValue); 112 } 113 }