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.journal.service.http;
21  
22  import com.liferay.portal.kernel.json.JSONObject;
23  
24  import com.liferay.portlet.journal.service.JournalArticleServiceUtil;
25  
26  /**
27   * <a href="JournalArticleServiceJSON.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.journal.service.JournalArticleServiceUtil</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.journal.model.JournalArticle</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.journal.service.http.JournalArticleJSONSerializer</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.journal.service.JournalArticleServiceUtil
69   * @see com.liferay.portlet.journal.service.http.JournalArticleJSONSerializer
70   *
71   */
72  public class JournalArticleServiceJSON {
73      public static JSONObject addArticle(java.lang.String articleId,
74          boolean autoArticleId, long plid, java.lang.String title,
75          java.lang.String description, java.lang.String content,
76          java.lang.String type, java.lang.String structureId,
77          java.lang.String templateId, int displayDateMonth, int displayDateDay,
78          int displayDateYear, int displayDateHour, int displayDateMinute,
79          int expirationDateMonth, int expirationDateDay, int expirationDateYear,
80          int expirationDateHour, int expirationDateMinute, boolean neverExpire,
81          int reviewDateMonth, int reviewDateDay, int reviewDateYear,
82          int reviewDateHour, int reviewDateMinute, boolean neverReview,
83          boolean indexable, java.lang.String articleURL,
84          java.lang.String[] tagsEntries, boolean addCommunityPermissions,
85          boolean addGuestPermissions)
86          throws java.rmi.RemoteException, com.liferay.portal.PortalException,
87              com.liferay.portal.SystemException {
88          com.liferay.portlet.journal.model.JournalArticle returnValue = JournalArticleServiceUtil.addArticle(articleId,
89                  autoArticleId, plid, title, description, content, type,
90                  structureId, templateId, displayDateMonth, displayDateDay,
91                  displayDateYear, displayDateHour, displayDateMinute,
92                  expirationDateMonth, expirationDateDay, expirationDateYear,
93                  expirationDateHour, expirationDateMinute, neverExpire,
94                  reviewDateMonth, reviewDateDay, reviewDateYear, reviewDateHour,
95                  reviewDateMinute, neverReview, indexable, articleURL,
96                  tagsEntries, addCommunityPermissions, addGuestPermissions);
97  
98          return JournalArticleJSONSerializer.toJSONObject(returnValue);
99      }
100 
101     public static JSONObject addArticle(java.lang.String articleId,
102         boolean autoArticleId, long plid, java.lang.String title,
103         java.lang.String description, java.lang.String content,
104         java.lang.String type, java.lang.String structureId,
105         java.lang.String templateId, int displayDateMonth, int displayDateDay,
106         int displayDateYear, int displayDateHour, int displayDateMinute,
107         int expirationDateMonth, int expirationDateDay, int expirationDateYear,
108         int expirationDateHour, int expirationDateMinute, boolean neverExpire,
109         int reviewDateMonth, int reviewDateDay, int reviewDateYear,
110         int reviewDateHour, int reviewDateMinute, boolean neverReview,
111         boolean indexable, java.lang.String articleURL,
112         java.lang.String[] tagsEntries,
113         java.lang.String[] communityPermissions,
114         java.lang.String[] guestPermissions)
115         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
116             com.liferay.portal.SystemException {
117         com.liferay.portlet.journal.model.JournalArticle returnValue = JournalArticleServiceUtil.addArticle(articleId,
118                 autoArticleId, plid, title, description, content, type,
119                 structureId, templateId, displayDateMonth, displayDateDay,
120                 displayDateYear, displayDateHour, displayDateMinute,
121                 expirationDateMonth, expirationDateDay, expirationDateYear,
122                 expirationDateHour, expirationDateMinute, neverExpire,
123                 reviewDateMonth, reviewDateDay, reviewDateYear, reviewDateHour,
124                 reviewDateMinute, neverReview, indexable, articleURL,
125                 tagsEntries, communityPermissions, guestPermissions);
126 
127         return JournalArticleJSONSerializer.toJSONObject(returnValue);
128     }
129 
130     public static JSONObject copyArticle(long groupId,
131         java.lang.String oldArticleId, java.lang.String newArticleId,
132         boolean autoArticleId, double version)
133         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
134             com.liferay.portal.SystemException {
135         com.liferay.portlet.journal.model.JournalArticle returnValue = JournalArticleServiceUtil.copyArticle(groupId,
136                 oldArticleId, newArticleId, autoArticleId, version);
137 
138         return JournalArticleJSONSerializer.toJSONObject(returnValue);
139     }
140 
141     public static JSONObject getArticle(long groupId,
142         java.lang.String articleId, double version)
143         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
144             com.liferay.portal.SystemException {
145         com.liferay.portlet.journal.model.JournalArticle returnValue = JournalArticleServiceUtil.getArticle(groupId,
146                 articleId, version);
147 
148         return JournalArticleJSONSerializer.toJSONObject(returnValue);
149     }
150 
151     public static void removeArticleLocale(long companyId,
152         java.lang.String languageId)
153         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
154             com.liferay.portal.SystemException {
155         JournalArticleServiceUtil.removeArticleLocale(companyId, languageId);
156     }
157 
158     public static JSONObject removeArticleLocale(long groupId,
159         java.lang.String articleId, double version, java.lang.String languageId)
160         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
161             com.liferay.portal.SystemException {
162         com.liferay.portlet.journal.model.JournalArticle returnValue = JournalArticleServiceUtil.removeArticleLocale(groupId,
163                 articleId, version, languageId);
164 
165         return JournalArticleJSONSerializer.toJSONObject(returnValue);
166     }
167 
168     public static JSONObject updateContent(long groupId,
169         java.lang.String articleId, double version, java.lang.String content)
170         throws java.rmi.RemoteException, com.liferay.portal.PortalException,
171             com.liferay.portal.SystemException {
172         com.liferay.portlet.journal.model.JournalArticle returnValue = JournalArticleServiceUtil.updateContent(groupId,
173                 articleId, version, content);
174 
175         return JournalArticleJSONSerializer.toJSONObject(returnValue);
176     }
177 }