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.portlet.softwarecatalog.service.http;
21  
22  import com.liferay.portal.kernel.json.JSONObject;
23  
24  import com.liferay.portlet.softwarecatalog.service.SCProductEntryServiceUtil;
25  
26  /**
27   * <a href="SCProductEntryServiceJSON.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.portlet.softwarecatalog.service.SCProductEntryServiceUtil</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.portlet.softwarecatalog.model.SCProductEntry</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.portlet.softwarecatalog.service.http.SCProductEntryJSONSerializer</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.portlet.softwarecatalog.service.SCProductEntryServiceUtil
69   * @see com.liferay.portlet.softwarecatalog.service.http.SCProductEntryJSONSerializer
70   *
71   */
72  public class SCProductEntryServiceJSON {
73      public static JSONObject addProductEntry(long plid, java.lang.String name,
74          java.lang.String type, java.lang.String tags,
75          java.lang.String shortDescription, java.lang.String longDescription,
76          java.lang.String pageURL, java.lang.String author,
77          java.lang.String repoGroupId, java.lang.String repoArtifactId,
78          long[] licenseIds, java.util.List<byte[]> thumbnails,
79          java.util.List<byte[]> fullImages, boolean addCommunityPermissions,
80          boolean addGuestPermissions)
81          throws java.rmi.RemoteException, com.liferay.portal.PortalException,
82              com.liferay.portal.SystemException {
83          com.liferay.portlet.softwarecatalog.model.SCProductEntry returnValue = SCProductEntryServiceUtil.addProductEntry(plid,
84                  name, type, tags, shortDescription, longDescription, pageURL,
85                  author, repoGroupId, repoArtifactId, licenseIds, thumbnails,
86                  fullImages, addCommunityPermissions, addGuestPermissions);
87  
88          return SCProductEntryJSONSerializer.toJSONObject(returnValue);
89      }
90  
91      public static JSONObject addProductEntry(long plid, java.lang.String name,
92          java.lang.String type, java.lang.String tags,
93          java.lang.String shortDescription, java.lang.String longDescription,
94          java.lang.String pageURL, java.lang.String author,
95          java.lang.String repoGroupId, java.lang.String repoArtifactId,
96          long[] licenseIds, java.util.List<byte[]> thumbnails,
97          java.util.List<byte[]> fullImages,
98          java.lang.String[] communityPermissions,
99          java.lang.String[] guestPermissions)
100         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
101             com.liferay.portal.SystemException {
102         com.liferay.portlet.softwarecatalog.model.SCProductEntry returnValue = SCProductEntryServiceUtil.addProductEntry(plid,
103                 name, type, tags, shortDescription, longDescription, pageURL,
104                 author, repoGroupId, repoArtifactId, licenseIds, thumbnails,
105                 fullImages, communityPermissions, guestPermissions);
106 
107         return SCProductEntryJSONSerializer.toJSONObject(returnValue);
108     }
109 
110     public static void deleteProductEntry(long productEntryId)
111         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
112             com.liferay.portal.SystemException {
113         SCProductEntryServiceUtil.deleteProductEntry(productEntryId);
114     }
115 
116     public static JSONObject getProductEntry(long productEntryId)
117         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
118             com.liferay.portal.SystemException {
119         com.liferay.portlet.softwarecatalog.model.SCProductEntry returnValue = SCProductEntryServiceUtil.getProductEntry(productEntryId);
120 
121         return SCProductEntryJSONSerializer.toJSONObject(returnValue);
122     }
123 
124     public static JSONObject updateProductEntry(long productEntryId,
125         java.lang.String name, java.lang.String type, java.lang.String tags,
126         java.lang.String shortDescription, java.lang.String longDescription,
127         java.lang.String pageURL, java.lang.String author,
128         java.lang.String repoGroupId, java.lang.String repoArtifactId,
129         long[] licenseIds, java.util.List<byte[]> thumbnails,
130         java.util.List<byte[]> fullImages)
131         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
132             com.liferay.portal.SystemException {
133         com.liferay.portlet.softwarecatalog.model.SCProductEntry returnValue = SCProductEntryServiceUtil.updateProductEntry(productEntryId,
134                 name, type, tags, shortDescription, longDescription, pageURL,
135                 author, repoGroupId, repoArtifactId, licenseIds, thumbnails,
136                 fullImages);
137 
138         return SCProductEntryJSONSerializer.toJSONObject(returnValue);
139     }
140 }