001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.journal.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
022    import com.liferay.portal.kernel.transaction.Isolation;
023    import com.liferay.portal.kernel.transaction.Propagation;
024    import com.liferay.portal.kernel.transaction.Transactional;
025    import com.liferay.portal.security.ac.AccessControlled;
026    import com.liferay.portal.service.BaseService;
027    
028    /**
029     * Provides the remote service interface for JournalArticle. Methods of this
030     * service are expected to have security checks based on the propagated JAAS
031     * credentials because this service can be accessed remotely.
032     *
033     * @author Brian Wing Shun Chan
034     * @see JournalArticleServiceUtil
035     * @see com.liferay.portlet.journal.service.base.JournalArticleServiceBaseImpl
036     * @see com.liferay.portlet.journal.service.impl.JournalArticleServiceImpl
037     * @generated
038     */
039    @ProviderType
040    @AccessControlled
041    @JSONWebService
042    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
043            PortalException.class, SystemException.class})
044    public interface JournalArticleService extends BaseService {
045            /*
046             * NOTE FOR DEVELOPERS:
047             *
048             * Never modify or reference this interface directly. Always use {@link JournalArticleServiceUtil} to access the journal article remote service. Add custom service methods to {@link com.liferay.portlet.journal.service.impl.JournalArticleServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
049             */
050    
051            /**
052            * Returns the Spring bean ID for this bean.
053            *
054            * @return the Spring bean ID for this bean
055            */
056            public java.lang.String getBeanIdentifier();
057    
058            /**
059            * Sets the Spring bean ID for this bean.
060            *
061            * @param beanIdentifier the Spring bean ID for this bean
062            */
063            public void setBeanIdentifier(java.lang.String beanIdentifier);
064    
065            /**
066            * Adds a web content article with additional parameters.
067            *
068            * @param groupId the primary key of the web content article's group
069            * @param folderId the primary key of the web content article folder
070            * @param classNameId the primary key of the DDMStructure class if the web
071            content article is related to a DDM structure, the primary key of
072            the class name associated with the article, or {@link
073            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
074            * @param classPK the primary key of the DDM structure, if the primary key
075            of the DDMStructure class is given as the
076            <code>classNameId</code> parameter, the primary key of the class
077            associated with the web content article, or <code>0</code>
078            otherwise
079            * @param articleId the primary key of the web content article
080            * @param autoArticleId whether to auto generate the web content article ID
081            * @param titleMap the web content article's locales and localized titles
082            * @param descriptionMap the web content article's locales and localized
083            descriptions
084            * @param content the HTML content wrapped in XML. For more information,
085            see the content example in the class description for {@link
086            JournalArticleLocalServiceImpl}.
087            * @param type the structure's type, if the web content article is related
088            to a DDM structure. For more information, see {@link
089            com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants}.
090            * @param ddmStructureKey the primary key of the web content article's DDM
091            structure, if the article is related to a DDM structure, or
092            <code>null</code> otherwise
093            * @param ddmTemplateKey the primary key of the web content article's DDM
094            template (optionally <code>null</code>). If the article is
095            related to a DDM structure, the template's structure must match
096            it.
097            * @param layoutUuid the unique string identifying the web content
098            article's display page
099            * @param displayDateMonth the month the web content article is set to
100            display
101            * @param displayDateDay the calendar day the web content article is set to
102            display
103            * @param displayDateYear the year the web content article is set to
104            display
105            * @param displayDateHour the hour the web content article is set to
106            display
107            * @param displayDateMinute the minute the web content article is set to
108            display
109            * @param expirationDateMonth the month the web content article is set to
110            expire
111            * @param expirationDateDay the calendar day the web content article is set
112            to expire
113            * @param expirationDateYear the year the web content article is set to
114            expire
115            * @param expirationDateHour the hour the web content article is set to
116            expire
117            * @param expirationDateMinute the minute the web content article is set to
118            expire
119            * @param neverExpire whether the web content article is not set to auto
120            expire
121            * @param reviewDateMonth the month the web content article is set for
122            review
123            * @param reviewDateDay the calendar day the web content article is set for
124            review
125            * @param reviewDateYear the year the web content article is set for review
126            * @param reviewDateHour the hour the web content article is set for review
127            * @param reviewDateMinute the minute the web content article is set for
128            review
129            * @param neverReview whether the web content article is not set for review
130            * @param indexable whether the web content article is searchable
131            * @param smallImage whether the web content article has a small image
132            * @param smallImageURL the web content article's small image URL
133            * @param smallFile the web content article's small image file
134            * @param images the web content's images
135            * @param articleURL the web content article's accessible URL
136            * @param serviceContext the service context to be applied. Can set the
137            UUID, creation date, modification date, expando bridge
138            attributes, guest permissions, group permissions, asset category
139            IDs, asset tag names, asset link entry IDs, the "urlTitle"
140            attribute, and workflow actions for the web content article. Can
141            also set whether to add the default guest and group permissions.
142            * @return the web content article
143            * @throws PortalException if the user did not have permission to add the
144            web content article or if a portal exception occurred
145            * @throws SystemException if a system exception occurred
146            */
147            public com.liferay.portlet.journal.model.JournalArticle addArticle(
148                    long groupId, long folderId, long classNameId, long classPK,
149                    java.lang.String articleId, boolean autoArticleId,
150                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
151                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
152                    java.lang.String content, java.lang.String type,
153                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
154                    java.lang.String layoutUuid, int displayDateMonth, int displayDateDay,
155                    int displayDateYear, int displayDateHour, int displayDateMinute,
156                    int expirationDateMonth, int expirationDateDay, int expirationDateYear,
157                    int expirationDateHour, int expirationDateMinute, boolean neverExpire,
158                    int reviewDateMonth, int reviewDateDay, int reviewDateYear,
159                    int reviewDateHour, int reviewDateMinute, boolean neverReview,
160                    boolean indexable, boolean smallImage, java.lang.String smallImageURL,
161                    java.io.File smallFile, java.util.Map<java.lang.String, byte[]> images,
162                    java.lang.String articleURL,
163                    com.liferay.portal.service.ServiceContext serviceContext)
164                    throws com.liferay.portal.kernel.exception.PortalException,
165                            com.liferay.portal.kernel.exception.SystemException;
166    
167            /**
168            * Adds a web content article without any images.
169            *
170            * @param groupId the primary key of the web content article's group
171            * @param folderId the primary key of the web content article folder
172            * @param classNameId the primary key of the DDMStructure class if the web
173            content article is related to a DDM structure, the primary key of
174            the class name associated with the article, or {@link
175            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
176            * @param classPK the primary key of the DDM structure, if the primary key
177            of the DDMStructure class is given as the
178            <code>classNameId</code> parameter, the primary key of the class
179            associated with the web content article, or <code>0</code>
180            otherwise
181            * @param articleId the primary key of the web content article
182            * @param autoArticleId whether to auto generate the web content article ID
183            * @param titleMap the web content article's locales and localized titles
184            * @param descriptionMap the web content article's locales and localized
185            descriptions
186            * @param content the HTML content wrapped in XML. For more information,
187            see the content example in the class description for {@link
188            JournalArticleLocalServiceImpl}.
189            * @param type the structure's type, if the web content article is related
190            to a DDM structure. For more information, see {@link
191            com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants}.
192            * @param ddmStructureKey the primary key of the web content article's DDM
193            structure, if the article is related to a DDM structure, or
194            <code>null</code> otherwise
195            * @param ddmTemplateKey the primary key of the web content article's DDM
196            template (optionally <code>null</code>). If the article is
197            related to a DDM structure, the template's structure must match
198            it.
199            * @param layoutUuid the unique string identifying the web content
200            article's display page
201            * @param displayDateMonth the month the web content article is set to
202            display
203            * @param displayDateDay the calendar day the web content article is set to
204            display
205            * @param displayDateYear the year the web content article is set to
206            display
207            * @param displayDateHour the hour the web content article is set to
208            display
209            * @param displayDateMinute the minute the web content article is set to
210            display
211            * @param expirationDateMonth the month the web content article is set to
212            expire
213            * @param expirationDateDay the calendar day the web content article is set
214            to expire
215            * @param expirationDateYear the year the web content article is set to
216            expire
217            * @param expirationDateHour the hour the web content article is set to
218            expire
219            * @param expirationDateMinute the minute the web content article is set to
220            expire
221            * @param neverExpire whether the web content article is not set to auto
222            expire
223            * @param reviewDateMonth the month the web content article is set for
224            review
225            * @param reviewDateDay the calendar day the web content article is set for
226            review
227            * @param reviewDateYear the year the web content article is set for review
228            * @param reviewDateHour the hour the web content article is set for review
229            * @param reviewDateMinute the minute the web content article is set for
230            review
231            * @param neverReview whether the web content article is not set for review
232            * @param indexable whether the web content article is searchable
233            * @param articleURL the web content article's accessible URL
234            * @param serviceContext the service context to be applied. Can set the
235            UUID, creation date, modification date, expando bridge
236            attributes, guest permissions, group permissions, asset category
237            IDs, asset tag names, asset link entry IDs, the "urlTitle"
238            attribute, and workflow actions for the web content article. Can
239            also set whether to add the default guest and group permissions.
240            * @return the web content article
241            * @throws PortalException if the user did not have permission to add the
242            web content article or if a portal exception occurred
243            * @throws SystemException if a system exception occurred
244            */
245            public com.liferay.portlet.journal.model.JournalArticle addArticle(
246                    long groupId, long folderId, long classNameId, long classPK,
247                    java.lang.String articleId, boolean autoArticleId,
248                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
249                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
250                    java.lang.String content, java.lang.String type,
251                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
252                    java.lang.String layoutUuid, int displayDateMonth, int displayDateDay,
253                    int displayDateYear, int displayDateHour, int displayDateMinute,
254                    int expirationDateMonth, int expirationDateDay, int expirationDateYear,
255                    int expirationDateHour, int expirationDateMinute, boolean neverExpire,
256                    int reviewDateMonth, int reviewDateDay, int reviewDateYear,
257                    int reviewDateHour, int reviewDateMinute, boolean neverReview,
258                    boolean indexable, java.lang.String articleURL,
259                    com.liferay.portal.service.ServiceContext serviceContext)
260                    throws com.liferay.portal.kernel.exception.PortalException,
261                            com.liferay.portal.kernel.exception.SystemException;
262    
263            /**
264            * Copies the web content article matching the group, article ID, and
265            * version. This method creates a new article, extracting all the values
266            * from the old one and updating its article ID.
267            *
268            * @param groupId the primary key of the web content article's group
269            * @param oldArticleId the primary key of the old web content article
270            * @param newArticleId the primary key of the new web content article
271            * @param autoArticleId whether to auto-generate the web content article ID
272            * @param version the web content article's version
273            * @return the new web content article
274            * @throws PortalException if the user did not have permission to add the
275            copy the web content article, if a matching web content article
276            could not be found, or if a portal exception occurred
277            * @throws SystemException if a system exception occurred
278            */
279            public com.liferay.portlet.journal.model.JournalArticle copyArticle(
280                    long groupId, java.lang.String oldArticleId,
281                    java.lang.String newArticleId, boolean autoArticleId, double version)
282                    throws com.liferay.portal.kernel.exception.PortalException,
283                            com.liferay.portal.kernel.exception.SystemException;
284    
285            /**
286            * Deletes the web content article and its resources matching the group,
287            * article ID, and version, optionally sending email notifying denial of the
288            * web content article if it had not yet been approved.
289            *
290            * @param groupId the primary key of the web content article's group
291            * @param articleId the primary key of the web content article
292            * @param version the web content article's version
293            * @param articleURL the web content article's accessible URL
294            * @param serviceContext the service context to be applied. Can set the
295            portlet preferences that include email information to notify
296            recipients of the unapproved web content article's denial.
297            * @throws PortalException if the user did not have permission to delete the
298            web content article, if a matching web content article could not
299            be found, or if a portal exception occurred
300            * @throws SystemException if a system exception occurred
301            */
302            public void deleteArticle(long groupId, java.lang.String articleId,
303                    double version, java.lang.String articleURL,
304                    com.liferay.portal.service.ServiceContext serviceContext)
305                    throws com.liferay.portal.kernel.exception.PortalException,
306                            com.liferay.portal.kernel.exception.SystemException;
307    
308            /**
309            * Deletes all web content articles and their resources matching the group
310            * and article ID, optionally sending email notifying denial of article if
311            * it had not yet been approved.
312            *
313            * @param groupId the primary key of the web content article's group
314            * @param articleId the primary key of the web content article
315            * @param articleURL the web content article's accessible URL
316            * @param serviceContext the service context to be applied. Can set the
317            portlet preferences that include email information to notify
318            recipients of the unapproved web content article's denial.
319            * @throws PortalException if the user did not have permission to delete the
320            web content article or if a portal exception occurred
321            * @throws SystemException if a system exception occurred
322            */
323            public void deleteArticle(long groupId, java.lang.String articleId,
324                    java.lang.String articleURL,
325                    com.liferay.portal.service.ServiceContext serviceContext)
326                    throws com.liferay.portal.kernel.exception.PortalException,
327                            com.liferay.portal.kernel.exception.SystemException;
328    
329            /**
330            * Expires the web content article matching the group, article ID, and
331            * version.
332            *
333            * @param groupId the primary key of the web content article's group
334            * @param articleId the primary key of the web content article
335            * @param version the web content article's version
336            * @param articleURL the web content article's accessible URL
337            * @param serviceContext the service context to be applied. Can set the
338            modification date, status date, portlet preferences, and can set
339            whether to add the default command update for the web content
340            article. With respect to social activities, by setting the
341            service context's command to {@link
342            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
343            is considered a web content update activity; otherwise it is
344            considered a web content add activity.
345            * @return the web content article
346            * @throws PortalException if the user did not have permission to expire the
347            web content article, if a matching web content article could not
348            be found, or if a portal exception occurred
349            * @throws SystemException if a system exception occurred
350            */
351            public com.liferay.portlet.journal.model.JournalArticle expireArticle(
352                    long groupId, java.lang.String articleId, double version,
353                    java.lang.String articleURL,
354                    com.liferay.portal.service.ServiceContext serviceContext)
355                    throws com.liferay.portal.kernel.exception.PortalException,
356                            com.liferay.portal.kernel.exception.SystemException;
357    
358            /**
359            * Expires the web content article matching the group and article ID,
360            * expiring all of its versions if the
361            * <code>journal.article.expire.all.versions</code> portal property is
362            * <code>true</code>, otherwise expiring only its latest approved version.
363            *
364            * @param groupId the primary key of the web content article's group
365            * @param articleId the primary key of the web content article
366            * @param articleURL the web content article's accessible URL
367            * @param serviceContext the service context to be applied. Can set the
368            modification date, status date, portlet preferences, and can set
369            whether to add the default command update for the web content
370            article. With respect to social activities, by setting the
371            service context's command to {@link
372            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
373            is considered a web content update activity; otherwise it is
374            considered a web content add activity.
375            * @throws PortalException if the user did not have permission to expire the
376            web content article, if a matching web content article could not
377            be found, or if a portal exception occurred
378            * @throws SystemException if a system exception occurred
379            */
380            public void expireArticle(long groupId, java.lang.String articleId,
381                    java.lang.String articleURL,
382                    com.liferay.portal.service.ServiceContext serviceContext)
383                    throws com.liferay.portal.kernel.exception.PortalException,
384                            com.liferay.portal.kernel.exception.SystemException;
385    
386            /**
387            * Returns the web content article with the ID.
388            *
389            * @param id the primary key of the web content article
390            * @return the web content article with the ID
391            * @throws PortalException if a matching web content article could not be
392            found or if the user did not have permission to view the web
393            content article
394            * @throws SystemException if a system exception occurred
395            */
396            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
397            public com.liferay.portlet.journal.model.JournalArticle getArticle(long id)
398                    throws com.liferay.portal.kernel.exception.PortalException,
399                            com.liferay.portal.kernel.exception.SystemException;
400    
401            /**
402            * Returns the latest approved web content article, or the latest unapproved
403            * article if none are approved. Both approved and unapproved articles must
404            * match the group and article ID.
405            *
406            * @param groupId the primary key of the web content article's group
407            * @param articleId the primary key of the web content article
408            * @return the matching web content article
409            * @throws PortalException if the user did not have permission to view the
410            web content article or if a matching web content article could
411            not be found
412            * @throws SystemException if a system exception occurred
413            */
414            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
415            public com.liferay.portlet.journal.model.JournalArticle getArticle(
416                    long groupId, java.lang.String articleId)
417                    throws com.liferay.portal.kernel.exception.PortalException,
418                            com.liferay.portal.kernel.exception.SystemException;
419    
420            /**
421            * Returns the web content article matching the group, article ID, and
422            * version.
423            *
424            * @param groupId the primary key of the web content article's group
425            * @param articleId the primary key of the web content article
426            * @param version the web content article's version
427            * @return the matching web content article
428            * @throws PortalException if the user did not have permission to view the
429            web content article or if a matching web content article could
430            not be found
431            * @throws SystemException if a system exception occurred
432            */
433            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
434            public com.liferay.portlet.journal.model.JournalArticle getArticle(
435                    long groupId, java.lang.String articleId, double version)
436                    throws com.liferay.portal.kernel.exception.PortalException,
437                            com.liferay.portal.kernel.exception.SystemException;
438    
439            /**
440            * Returns the web content article matching the group, class name, and class
441            * PK.
442            *
443            * @param groupId the primary key of the web content article's group
444            * @param className the DDMStructure class name if the web content article
445            is related to a DDM structure, the primary key of the class name
446            associated with the article, or {@link
447            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
448            * @param classPK the primary key of the DDM structure, if the the
449            DDMStructure class name is given as the <code>className</code>
450            parameter, the primary key of the class associated with the web
451            content article, or <code>0</code> otherwise
452            * @return the matching web content article
453            * @throws PortalException if a matching web content article could not be
454            found or if the user did not have permission to view the web
455            content article
456            * @throws SystemException if a system exception occurred
457            */
458            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
459            public com.liferay.portlet.journal.model.JournalArticle getArticle(
460                    long groupId, java.lang.String className, long classPK)
461                    throws com.liferay.portal.kernel.exception.PortalException,
462                            com.liferay.portal.kernel.exception.SystemException;
463    
464            /**
465            * Returns the latest web content article that is approved, or the latest
466            * unapproved article if none are approved. Both approved and unapproved
467            * articles must match the group and URL title.
468            *
469            * @param groupId the primary key of the web content article's group
470            * @param urlTitle the web content article's accessible URL title
471            * @return the matching web content article
472            * @throws PortalException if the user did not have permission to view the
473            web content article or if a portal exception occurred
474            * @throws SystemException if a system exception occurred
475            */
476            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
477            public com.liferay.portlet.journal.model.JournalArticle getArticleByUrlTitle(
478                    long groupId, java.lang.String urlTitle)
479                    throws com.liferay.portal.kernel.exception.PortalException,
480                            com.liferay.portal.kernel.exception.SystemException;
481    
482            /**
483            * Returns the web content matching the group, article ID, and version.
484            *
485            * @param groupId the primary key of the web content article's group
486            * @param articleId the primary key of the web content article
487            * @param version the web content article's version
488            * @param languageId the primary key of the language translation to get
489            * @param themeDisplay the theme display
490            * @return the matching web content
491            * @throws PortalException if the user did not have permission to view the
492            web content article, if a matching web content article or DDM
493            template could not be found, or if a portal exception occurred
494            * @throws SystemException if a system exception occurred
495            */
496            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
497            public java.lang.String getArticleContent(long groupId,
498                    java.lang.String articleId, double version,
499                    java.lang.String languageId,
500                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
501                    throws com.liferay.portal.kernel.exception.PortalException,
502                            com.liferay.portal.kernel.exception.SystemException;
503    
504            /**
505            * Returns the latest web content matching the group and article ID.
506            *
507            * @param groupId the primary key of the web content article's group
508            * @param articleId the primary key of the web content article
509            * @param languageId the primary key of the language translation to get
510            * @param themeDisplay the theme display
511            * @return the matching web content
512            * @throws PortalException if the user did not have permission to view the
513            web content article, if a matching web content article or DDM
514            template could not be found, or if a portal exception occurred
515            * @throws SystemException if a system exception occurred
516            */
517            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
518            public java.lang.String getArticleContent(long groupId,
519                    java.lang.String articleId, java.lang.String languageId,
520                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
521                    throws com.liferay.portal.kernel.exception.PortalException,
522                            com.liferay.portal.kernel.exception.SystemException;
523    
524            /**
525            * Returns all the web content articles matching the group and folder.
526            *
527            * @param groupId the primary key of the web content article's group
528            * @param folderId the primary key of the web content article folder
529            * @return the matching web content articles
530            * @throws SystemException if a system exception occurred
531            */
532            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
533            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
534                    long groupId, long folderId)
535                    throws com.liferay.portal.kernel.exception.SystemException;
536    
537            /**
538            * Returns an ordered range of all the web content articles matching the
539            * group and folder.
540            *
541            * <p>
542            * Useful when paginating results. Returns a maximum of <code>end -
543            * start</code> instances. <code>start</code> and <code>end</code> are not
544            * primary keys, they are indexes in the result set. Thus, <code>0</code>
545            * refers to the first result in the set. Setting both <code>start</code>
546            * and <code>end</code> to {@link
547            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
548            * result set.
549            * </p>
550            *
551            * @param groupId the primary key of the web content article's group
552            * @param folderId the primary key of the web content article folder
553            * @param start the lower bound of the range of web content articles to
554            return
555            * @param end the upper bound of the range of web content articles to
556            return (not inclusive)
557            * @param obc the comparator to order the web content articles
558            * @return the matching web content articles
559            * @throws SystemException if a system exception occurred
560            */
561            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
562            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
563                    long groupId, long folderId, int start, int end,
564                    com.liferay.portal.kernel.util.OrderByComparator obc)
565                    throws com.liferay.portal.kernel.exception.SystemException;
566    
567            /**
568            * Returns an ordered range of all the web content articles matching the
569            * group and article ID.
570            *
571            * <p>
572            * Useful when paginating results. Returns a maximum of <code>end -
573            * start</code> instances. <code>start</code> and <code>end</code> are not
574            * primary keys, they are indexes in the result set. Thus, <code>0</code>
575            * refers to the first result in the set. Setting both <code>start</code>
576            * and <code>end</code> to {@link
577            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
578            * result set.
579            * </p>
580            *
581            * @param groupId the primary key of the web content article's group
582            * @param articleId the primary key of the web content article
583            * @param start the lower bound of the range of web content articles to
584            return
585            * @param end the upper bound of the range of web content articles to
586            return (not inclusive)
587            * @param obc the comparator to order the web content articles
588            * @return the range of matching web content articles ordered by the
589            comparator
590            * @throws SystemException if a system exception occurred
591            */
592            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
593            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByArticleId(
594                    long groupId, java.lang.String articleId, int start, int end,
595                    com.liferay.portal.kernel.util.OrderByComparator obc)
596                    throws com.liferay.portal.kernel.exception.SystemException;
597    
598            /**
599            * Returns all the web content articles matching the group and layout UUID.
600            *
601            * @param groupId the primary key of the web content article's group
602            * @param layoutUuid the unique string identifying the web content
603            article's display page
604            * @return the matching web content articles
605            * @throws SystemException if a system exception occurred
606            */
607            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
608            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByLayoutUuid(
609                    long groupId, java.lang.String layoutUuid)
610                    throws com.liferay.portal.kernel.exception.SystemException;
611    
612            /**
613            * Returns an ordered range of all the web content articles matching the
614            * group, class name ID, DDM structure key, and workflow status.
615            *
616            * <p>
617            * Useful when paginating results. Returns a maximum of <code>end -
618            * start</code> instances. <code>start</code> and <code>end</code> are not
619            * primary keys, they are indexes in the result set. Thus, <code>0</code>
620            * refers to the first result in the set. Setting both <code>start</code>
621            * and <code>end</code> to {@link
622            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
623            * result set.
624            * </p>
625            *
626            * @param groupId the primary key of the web content article's group
627            * @param classNameId the primary key of the DDMStructure class if the web
628            content article is related to a DDM structure, the primary key of
629            the class name associated with the article, or {@link
630            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
631            * @param ddmStructureKey the primary key of the web content article's DDM
632            structure
633            * @param status the web content article's workflow status. For more
634            information see {@link WorkflowConstants} for constants starting
635            with the "STATUS_" prefix.
636            * @param start the lower bound of the range of web content articles to
637            return
638            * @param end the upper bound of the range of web content articles to
639            return (not inclusive)
640            * @param obc the comparator to order the web content articles
641            * @return the range of matching web content articles ordered by the
642            comparator
643            * @throws SystemException if a system exception occurred
644            */
645            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
646            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByStructureId(
647                    long groupId, long classNameId, java.lang.String ddmStructureKey,
648                    int status, int start, int end,
649                    com.liferay.portal.kernel.util.OrderByComparator obc)
650                    throws com.liferay.portal.kernel.exception.SystemException;
651    
652            /**
653            * Returns an ordered range of all the web content articles matching the
654            * group, default class name ID, and DDM structure key.
655            *
656            * <p>
657            * Useful when paginating results. Returns a maximum of <code>end -
658            * start</code> instances. <code>start</code> and <code>end</code> are not
659            * primary keys, they are indexes in the result set. Thus, <code>0</code>
660            * refers to the first result in the set. Setting both <code>start</code>
661            * and <code>end</code> to {@link
662            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
663            * result set.
664            * </p>
665            *
666            * @param groupId the primary key of the web content article's group
667            * @param ddmStructureKey the primary key of the web content article's DDM
668            structure
669            * @param start the lower bound of the range of web content articles to
670            return
671            * @param end the upper bound of the range of web content articles to
672            return (not inclusive)
673            * @param obc the comparator to order the web content articles
674            * @return the range of matching web content articles ordered by the
675            comparator
676            * @throws SystemException if a system exception occurred
677            */
678            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
679            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByStructureId(
680                    long groupId, java.lang.String ddmStructureKey, int start, int end,
681                    com.liferay.portal.kernel.util.OrderByComparator obc)
682                    throws com.liferay.portal.kernel.exception.SystemException;
683    
684            /**
685            * Returns the number of web content articles matching the group and folder.
686            *
687            * @param groupId the primary key of the web content article's group
688            * @param folderId the primary key of the web content article folder
689            * @return the number of matching web content articles
690            * @throws SystemException if a system exception occurred
691            */
692            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
693            public int getArticlesCount(long groupId, long folderId)
694                    throws com.liferay.portal.kernel.exception.SystemException;
695    
696            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
697            public int getArticlesCount(long groupId, long folderId, int status)
698                    throws com.liferay.portal.kernel.exception.SystemException;
699    
700            /**
701            * Returns the number of web content articles matching the group and article
702            * ID.
703            *
704            * @param groupId the primary key of the web content article's group
705            * @param articleId the primary key of the web content article
706            * @return the number of matching web content articles
707            * @throws SystemException if a system exception occurred
708            */
709            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
710            public int getArticlesCountByArticleId(long groupId,
711                    java.lang.String articleId)
712                    throws com.liferay.portal.kernel.exception.SystemException;
713    
714            /**
715            * Returns the number of web content articles matching the group, class name
716            * ID, DDM structure key, and workflow status.
717            *
718            * @param groupId the primary key of the web content article's group
719            * @param classNameId the primary key of the DDMStructure class if the web
720            content article is related to a DDM structure, the primary key of
721            the class name associated with the article, or {@link
722            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
723            * @param ddmStructureKey the primary key of the web content article's DDM
724            structure
725            * @param status the web content article's workflow status. For more
726            information see {@link WorkflowConstants} for constants starting
727            with the "STATUS_" prefix.
728            * @return the number of matching web content articles
729            * @throws SystemException if a system exception occurred
730            */
731            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
732            public int getArticlesCountByStructureId(long groupId, long classNameId,
733                    java.lang.String ddmStructureKey, int status)
734                    throws com.liferay.portal.kernel.exception.SystemException;
735    
736            /**
737            * Returns the number of web content articles matching the group, default
738            * class name ID, and DDM structure key.
739            *
740            * @param groupId the primary key of the web content article's group
741            * @param ddmStructureKey the primary key of the web content article's DDM
742            structure
743            * @return the number of matching web content articles
744            * @throws SystemException if a system exception occurred
745            */
746            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
747            public int getArticlesCountByStructureId(long groupId,
748                    java.lang.String ddmStructureKey)
749                    throws com.liferay.portal.kernel.exception.SystemException;
750    
751            /**
752            * Returns the web content article matching the URL title that is currently
753            * displayed or next to be displayed if no article is currently displayed.
754            *
755            * @param groupId the primary key of the web content article's group
756            * @param urlTitle the web content article's accessible URL title
757            * @return the web content article matching the URL title that is currently
758            displayed, or next one to be displayed if no version of the
759            article is currently displayed
760            * @throws PortalException if the user did not have permission to view the
761            web content article or if no approved matching web content
762            articles could be found
763            * @throws SystemException if a system exception occurred
764            */
765            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
766            public com.liferay.portlet.journal.model.JournalArticle getDisplayArticleByUrlTitle(
767                    long groupId, java.lang.String urlTitle)
768                    throws com.liferay.portal.kernel.exception.PortalException,
769                            com.liferay.portal.kernel.exception.SystemException;
770    
771            /**
772            * Returns the number of folders containing web content articles belonging
773            * to the group.
774            *
775            * @param groupId the primary key of the web content article's group
776            * @param folderIds the primary keys of the web content article folders
777            (optionally {@link java.util.Collections#EMPTY_LIST})
778            * @return the number of matching folders containing web content articles
779            * @throws SystemException if a system exception occurred
780            */
781            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
782            public int getFoldersAndArticlesCount(long groupId,
783                    java.util.List<java.lang.Long> folderIds)
784                    throws com.liferay.portal.kernel.exception.SystemException;
785    
786            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
787            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getGroupArticles(
788                    long groupId, long userId, long rootFolderId, int status, int start,
789                    int end,
790                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
791                    throws com.liferay.portal.kernel.exception.PortalException,
792                            com.liferay.portal.kernel.exception.SystemException;
793    
794            /**
795            * Returns an ordered range of all the web content articles matching the
796            * group, user, the root folder or any of its subfolders.
797            *
798            * @param groupId the primary key of the web content article's group
799            * @param userId the primary key of the user (optionally <code>0</code>)
800            * @param rootFolderId the primary key of the root folder to begin the
801            search
802            * @param start the lower bound of the range of web content articles to
803            return
804            * @param end the upper bound of the range of web content articles to
805            return (not inclusive)
806            * @param orderByComparator the comparator to order the web content
807            articles
808            * @return the range of matching web content articles ordered by the
809            comparator
810            * @throws PortalException if the root folder could not be found, if the
811            current user did not have permission to view the root folder, or
812            if a portal exception occurred
813            * @throws SystemException if a system exception occurred
814            */
815            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
816            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getGroupArticles(
817                    long groupId, long userId, long rootFolderId, int start, int end,
818                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
819                    throws com.liferay.portal.kernel.exception.PortalException,
820                            com.liferay.portal.kernel.exception.SystemException;
821    
822            /**
823            * Returns the number of web content articles matching the group, user, and
824            * the root folder or any of its subfolders.
825            *
826            * @param groupId the primary key of the web content article's group
827            * @param userId the primary key of the user (optionally <code>0</code>)
828            * @param rootFolderId the primary key of the root folder to begin the
829            search
830            * @return the number of matching web content articles
831            * @throws PortalException if the root folder could not be found, if the
832            current user did not have permission to view the root folder, or
833            if a portal exception occurred
834            * @throws SystemException if a system exception occurred
835            */
836            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
837            public int getGroupArticlesCount(long groupId, long userId,
838                    long rootFolderId)
839                    throws com.liferay.portal.kernel.exception.PortalException,
840                            com.liferay.portal.kernel.exception.SystemException;
841    
842            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
843            public int getGroupArticlesCount(long groupId, long userId,
844                    long rootFolderId, int status)
845                    throws com.liferay.portal.kernel.exception.PortalException,
846                            com.liferay.portal.kernel.exception.SystemException;
847    
848            /**
849            * Returns the latest web content article matching the resource primary key,
850            * preferring articles with approved workflow status.
851            *
852            * @param resourcePrimKey the primary key of the resource instance
853            * @return the latest web content article matching the resource primary key,
854            preferring articles with approved workflow status
855            * @throws PortalException if the user did not have permission to view the
856            web content article or if a matching web content article could
857            not be found
858            * @throws SystemException if a system exception occurred
859            */
860            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
861            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
862                    long resourcePrimKey)
863                    throws com.liferay.portal.kernel.exception.PortalException,
864                            com.liferay.portal.kernel.exception.SystemException;
865    
866            /**
867            * Returns the latest web content article matching the group, article ID,
868            * and workflow status.
869            *
870            * @param groupId the primary key of the web content article's group
871            * @param articleId the primary key of the web content article
872            * @param status the web content article's workflow status. For more
873            information see {@link WorkflowConstants} for constants starting
874            with the "STATUS_" prefix.
875            * @return the latest matching web content article
876            * @throws PortalException if the user did not have permission to view the
877            web content article or if a matching web content article could
878            not be found
879            * @throws SystemException if a system exception occurred
880            */
881            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
882            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
883                    long groupId, java.lang.String articleId, int status)
884                    throws com.liferay.portal.kernel.exception.PortalException,
885                            com.liferay.portal.kernel.exception.SystemException;
886    
887            /**
888            * Returns the latest web content article matching the group, class name ID,
889            * and class PK.
890            *
891            * @param groupId the primary key of the web content article's group
892            * @param className the DDMStructure class name if the web content article
893            is related to a DDM structure, the class name associated with the
894            article, or {@link JournalArticleConstants#CLASSNAME_ID_DEFAULT}
895            otherwise
896            * @param classPK the primary key of the DDM structure, if the DDMStructure
897            class name is given as the <code>className</code> parameter, the
898            primary key of the class associated with the web content article,
899            or <code>0</code> otherwise
900            * @return the latest matching web content article
901            * @throws PortalException if a matching web content article could not be
902            found or if the user did not have permission to view the web
903            content article
904            * @throws SystemException if a system exception occurred
905            */
906            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
907            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
908                    long groupId, java.lang.String className, long classPK)
909                    throws com.liferay.portal.kernel.exception.PortalException,
910                            com.liferay.portal.kernel.exception.SystemException;
911    
912            /**
913            * Moves all versions of the the web content article matching the group and
914            * article ID to the folder.
915            *
916            * @param groupId the primary key of the web content article's group
917            * @param articleId the primary key of the web content article
918            * @param newFolderId the primary key of the web content article's new
919            folder
920            * @throws PortalException if the user did not have permission to update any
921            one of the versions of the web content article or if any one of
922            the versions of the web content article could not be moved to the
923            folder
924            * @throws SystemException if a system exception occurred
925            */
926            public void moveArticle(long groupId, java.lang.String articleId,
927                    long newFolderId)
928                    throws com.liferay.portal.kernel.exception.PortalException,
929                            com.liferay.portal.kernel.exception.SystemException;
930    
931            /**
932            * Moves the web content article from the Recycle Bin to the folder.
933            *
934            * @param groupId the primary key of the web content article's group
935            * @param resourcePrimKey the primary key of the resource instance
936            * @param newFolderId the primary key of the web content article's new
937            folder
938            * @param serviceContext the service context to be applied. Can set the
939            modification date, portlet preferences, and can set whether to
940            add the default command update for the web content article. With
941            respect to social activities, by setting the service context's
942            command to {@link
943            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
944            is considered a web content update activity; otherwise it is
945            considered a web content add activity.
946            * @return the updated web content article, which was moved from the Recycle
947            Bin to the folder
948            * @throws PortalException if the user did not have permission to view or
949            update the web content article, if a matching trashed web content
950            article could not be found, or if a portal exception occurred
951            * @throws SystemException if a system exception occurred
952            */
953            public com.liferay.portlet.journal.model.JournalArticle moveArticleFromTrash(
954                    long groupId, long resourcePrimKey, long newFolderId,
955                    com.liferay.portal.service.ServiceContext serviceContext)
956                    throws com.liferay.portal.kernel.exception.PortalException,
957                            com.liferay.portal.kernel.exception.SystemException;
958    
959            /**
960            * Moves the web content article from the Recycle Bin to the folder.
961            *
962            * @param groupId the primary key of the web content article's group
963            * @param articleId the primary key of the web content article
964            * @param newFolderId the primary key of the web content article's new
965            folder
966            * @param serviceContext the service context to be applied. Can set the
967            modification date, portlet preferences, and can set whether to
968            add the default command update for the web content article. With
969            respect to social activities, by setting the service context's
970            command to {@link
971            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
972            is considered a web content update activity; otherwise it is
973            considered a web content add activity.
974            * @return the updated web content article, which was moved from the Recycle
975            Bin to the folder
976            * @throws PortalException if the user did not have permission to view or
977            update the web content article, if a trashed web content article
978            with the primary key could not be found, or if a portal exception
979            occurred
980            * @throws SystemException if a system exception occurred
981            */
982            public com.liferay.portlet.journal.model.JournalArticle moveArticleFromTrash(
983                    long groupId, java.lang.String articleId, long newFolderId,
984                    com.liferay.portal.service.ServiceContext serviceContext)
985                    throws com.liferay.portal.kernel.exception.PortalException,
986                            com.liferay.portal.kernel.exception.SystemException;
987    
988            /**
989            * Moves the latest version of the web content article matching the group
990            * and article ID to the recycle bin.
991            *
992            * @param groupId the primary key of the web content article's group
993            * @param articleId the primary key of the web content article
994            * @return the moved web content article or <code>null</code> if no matching
995            article was found
996            * @throws PortalException if the user did not have permission to move the
997            article to the Recycle Bin or if a portal exception occurred
998            * @throws SystemException if a system exception occurred
999            */
1000            public com.liferay.portlet.journal.model.JournalArticle moveArticleToTrash(
1001                    long groupId, java.lang.String articleId)
1002                    throws com.liferay.portal.kernel.exception.PortalException,
1003                            com.liferay.portal.kernel.exception.SystemException;
1004    
1005            /**
1006            * Removes the web content of all the company's web content articles
1007            * matching the language.
1008            *
1009            * @param companyId the primary key of the web content article's company
1010            * @param languageId the primary key of the language locale to remove
1011            * @throws PortalException if the user did not have permission to update any
1012            one of the the web content articles or if web content matching
1013            the language could not be found for any one of the articles
1014            * @throws SystemException if a system exception occurred
1015            */
1016            public void removeArticleLocale(long companyId, java.lang.String languageId)
1017                    throws com.liferay.portal.kernel.exception.PortalException,
1018                            com.liferay.portal.kernel.exception.SystemException;
1019    
1020            /**
1021            * Removes the web content of the web content article matching the group,
1022            * article ID, and version, and language.
1023            *
1024            * @param groupId the primary key of the web content article's group
1025            * @param articleId the primary key of the web content article
1026            * @param version the web content article's version
1027            * @param languageId the primary key of the language locale to remove
1028            * @return the updated web content article with the locale removed
1029            * @throws PortalException if the user did not have permission to update the
1030            web content article or if a matching web content article could
1031            not be found
1032            * @throws SystemException if a system exception occurred
1033            */
1034            public com.liferay.portlet.journal.model.JournalArticle removeArticleLocale(
1035                    long groupId, java.lang.String articleId, double version,
1036                    java.lang.String languageId)
1037                    throws com.liferay.portal.kernel.exception.PortalException,
1038                            com.liferay.portal.kernel.exception.SystemException;
1039    
1040            /**
1041            * Restores the web content article associated with the resource primary key
1042            * from the Recycle Bin.
1043            *
1044            * @param resourcePrimKey the primary key of the resource instance
1045            * @throws PortalException if a matching web content article could not be
1046            found in the Recycle Bin, if the user did not have permission to
1047            view or restore the article, or if a portal exception occurred
1048            * @throws SystemException if a system exception occurred
1049            */
1050            public void restoreArticleFromTrash(long resourcePrimKey)
1051                    throws com.liferay.portal.kernel.exception.PortalException,
1052                            com.liferay.portal.kernel.exception.SystemException;
1053    
1054            /**
1055            * Restores the web content article from the Recycle Bin.
1056            *
1057            * @param groupId the primary key of the web content article's group
1058            * @param articleId the primary key of the web content article
1059            * @throws PortalException if the web content article with the primary key
1060            could not be found in the Recycle Bin, if the user did not have
1061            permission to restore the article, or if a portal exception
1062            occurred
1063            * @throws SystemException if a system exception occurred
1064            */
1065            public void restoreArticleFromTrash(long groupId, java.lang.String articleId)
1066                    throws com.liferay.portal.kernel.exception.PortalException,
1067                            com.liferay.portal.kernel.exception.SystemException;
1068    
1069            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1070            public com.liferay.portal.kernel.search.Hits search(long groupId,
1071                    long creatorUserId, int status, int start, int end)
1072                    throws com.liferay.portal.kernel.exception.PortalException,
1073                            com.liferay.portal.kernel.exception.SystemException;
1074    
1075            /**
1076            * Returns an ordered range of all the web content articles matching the
1077            * parameters, including a keywords parameter for matching with the
1078            * article's ID, title, description, and content, a DDM structure key
1079            * parameter, and a DDM template key parameter.
1080            *
1081            * <p>
1082            * Useful when paginating results. Returns a maximum of <code>end -
1083            * start</code> instances. <code>start</code> and <code>end</code> are not
1084            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1085            * refers to the first result in the set. Setting both <code>start</code>
1086            * and <code>end</code> to {@link
1087            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1088            * result set.
1089            * </p>
1090            *
1091            * @param companyId the primary key of the web content article's company
1092            * @param groupId the primary key of the group (optionally <code>0</code>)
1093            * @param folderIds the primary keys of the web content article folders
1094            (optionally {@link java.util.Collections#EMPTY_LIST})
1095            * @param classNameId the primary key of the DDMStructure class if the web
1096            content article is related to a DDM structure, the primary key of
1097            the class name associated with the article, or {@link
1098            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1099            * @param keywords the keywords (space separated), which may occur in the
1100            web content article ID, title, description, or content
1101            (optionally <code>null</code>). If the keywords value is not
1102            <code>null</code>, the search uses the OR operator in connecting
1103            query criteria; otherwise it uses the AND operator.
1104            * @param version the web content article's version (optionally
1105            <code>null</code>)
1106            * @param type the web content article's type (optionally
1107            <code>null</code>)
1108            * @param ddmStructureKey the primary key of the web content article's DDM
1109            structure, if the article is related to a DDM structure, or
1110            <code>null</code> otherwise
1111            * @param ddmTemplateKey the primary key of the web content article's DDM
1112            template (optionally <code>null</code>). If the article is
1113            related to a DDM structure, the template's structure must match
1114            it.
1115            * @param displayDateGT the date after which a matching web content
1116            article's display date must be after (optionally
1117            <code>null</code>)
1118            * @param displayDateLT the date before which a matching web content
1119            article's display date must be before (optionally
1120            <code>null</code>)
1121            * @param status the web content article's workflow status. For more
1122            information see {@link WorkflowConstants} for constants starting
1123            with the "STATUS_" prefix.
1124            * @param reviewDate the web content article's scheduled review date
1125            (optionally <code>null</code>)
1126            * @param start the lower bound of the range of web content articles to
1127            return
1128            * @param end the upper bound of the range of web content articles to
1129            return (not inclusive)
1130            * @param obc the comparator to order the web content articles
1131            * @return the range of matching web content articles ordered by the
1132            comparator
1133            * @throws SystemException if a system exception occurred
1134            */
1135            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1136            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
1137                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
1138                    long classNameId, java.lang.String keywords, java.lang.Double version,
1139                    java.lang.String type, java.lang.String ddmStructureKey,
1140                    java.lang.String ddmTemplateKey, java.util.Date displayDateGT,
1141                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
1142                    int start, int end, com.liferay.portal.kernel.util.OrderByComparator obc)
1143                    throws com.liferay.portal.kernel.exception.SystemException;
1144    
1145            /**
1146            * Returns an ordered range of all the web content articles matching the
1147            * parameters, including keyword parameters for article ID, title,
1148            * description, and content, a DDM structure key parameter, a DDM template
1149            * key parameter, and an AND operator switch.
1150            *
1151            * <p>
1152            * Useful when paginating results. Returns a maximum of <code>end -
1153            * start</code> instances. <code>start</code> and <code>end</code> are not
1154            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1155            * refers to the first result in the set. Setting both <code>start</code>
1156            * and <code>end</code> to {@link
1157            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1158            * result set.
1159            * </p>
1160            *
1161            * @param companyId the primary key of the web content article's company
1162            * @param groupId the primary key of the group (optionally <code>0</code>)
1163            * @param folderIds the primary keys of the web content article folders
1164            (optionally {@link java.util.Collections#EMPTY_LIST})
1165            * @param classNameId the primary key of the DDMStructure class if the web
1166            content article is related to a DDM structure, the primary key of
1167            the class name associated with the article, or {@link
1168            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1169            * @param articleId the article ID keywords (space separated, optionally
1170            <code>null</code>)
1171            * @param version the web content article's version (optionally
1172            <code>null</code>)
1173            * @param title the title keywords (space separated, optionally
1174            <code>null</code>)
1175            * @param description the description keywords (space separated, optionally
1176            <code>null</code>)
1177            * @param content the content keywords (space separated, optionally
1178            <code>null</code>)
1179            * @param type the web content article's type (optionally
1180            <code>null</code>)
1181            * @param ddmStructureKey the primary key of the web content article's DDM
1182            structure, if the article is related to a DDM structure, or
1183            <code>null</code> otherwise
1184            * @param ddmTemplateKey the primary key of the web content article's DDM
1185            template (optionally <code>null</code>). If the article is
1186            related to a DDM structure, the template's structure must match
1187            it.
1188            * @param displayDateGT the date after which a matching web content
1189            article's display date must be after (optionally
1190            <code>null</code>)
1191            * @param displayDateLT the date before which a matching web content
1192            article's display date must be before (optionally
1193            <code>null</code>)
1194            * @param status the web content article's workflow status. For more
1195            information see {@link WorkflowConstants} for constants starting
1196            with the "STATUS_" prefix.
1197            * @param reviewDate the web content article's scheduled review date
1198            (optionally <code>null</code>)
1199            * @param andOperator whether every field must match its value or keywords,
1200            or just one field must match. Company, group, folder IDs, class
1201            name ID, and status must all match their values.
1202            * @param start the lower bound of the range of web content articles to
1203            return
1204            * @param end the upper bound of the range of web content articles to
1205            return (not inclusive)
1206            * @param obc the comparator to order the web content articles
1207            * @return the range of matching web content articles ordered by the
1208            comparator
1209            * @throws SystemException if a system exception occurred
1210            */
1211            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1212            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
1213                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
1214                    long classNameId, java.lang.String articleId, java.lang.Double version,
1215                    java.lang.String title, java.lang.String description,
1216                    java.lang.String content, java.lang.String type,
1217                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
1218                    java.util.Date displayDateGT, java.util.Date displayDateLT, int status,
1219                    java.util.Date reviewDate, boolean andOperator, int start, int end,
1220                    com.liferay.portal.kernel.util.OrderByComparator obc)
1221                    throws com.liferay.portal.kernel.exception.SystemException;
1222    
1223            /**
1224            * Returns an ordered range of all the web content articles matching the
1225            * parameters, including keyword parameters for article ID, title,
1226            * description, and content, a DDM structure keys (plural) parameter, a DDM
1227            * template keys (plural) parameter, and an AND operator switch.
1228            *
1229            * <p>
1230            * Useful when paginating results. Returns a maximum of <code>end -
1231            * start</code> instances. <code>start</code> and <code>end</code> are not
1232            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1233            * refers to the first result in the set. Setting both <code>start</code>
1234            * and <code>end</code> to {@link
1235            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1236            * result set.
1237            * </p>
1238            *
1239            * @param companyId the primary key of the web content article's company
1240            * @param groupId the primary key of the group (optionally <code>0</code>)
1241            * @param folderIds the primary keys of the web content article folders
1242            (optionally {@link java.util.Collections#EMPTY_LIST})
1243            * @param classNameId the primary key of the DDMStructure class if the web
1244            content article is related to a DDM structure, the primary key of
1245            the class name associated with the article, or {@link
1246            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1247            * @param articleId the article ID keywords (space separated, optionally
1248            <code>null</code>)
1249            * @param version the web content article's version (optionally
1250            <code>null</code>)
1251            * @param title the title keywords (space separated, optionally
1252            <code>null</code>)
1253            * @param description the description keywords (space separated, optionally
1254            <code>null</code>)
1255            * @param content the content keywords (space separated, optionally
1256            <code>null</code>)
1257            * @param type the web content article's type (optionally
1258            <code>null</code>)
1259            * @param ddmStructureKeys the primary keys of the web content article's
1260            DDM structures, if the article is related to a DDM structure, or
1261            <code>null</code> otherwise
1262            * @param ddmTemplateKeys the primary keys of the web content article's DDM
1263            templates (originally <code>null</code>). If the articles are
1264            related to a DDM structure, the template's structure must match
1265            it.
1266            * @param displayDateGT the date after which a matching web content
1267            article's display date must be after (optionally
1268            <code>null</code>)
1269            * @param displayDateLT the date before which a matching web content
1270            article's display date must be before (optionally
1271            <code>null</code>)
1272            * @param status the web content article's workflow status. For more
1273            information see {@link WorkflowConstants} for constants starting
1274            with the "STATUS_" prefix.
1275            * @param reviewDate the web content article's scheduled review date
1276            (optionally <code>null</code>)
1277            * @param andOperator whether every field must match its value or keywords,
1278            or just one field must match.  Company, group, folder IDs, class
1279            name ID, and status must all match their values.
1280            * @param start the lower bound of the range of web content articles to
1281            return
1282            * @param end the upper bound of the range of web content articles to
1283            return (not inclusive)
1284            * @param obc the comparator to order the web content articles
1285            * @return the range of matching web content articles ordered by the
1286            comparator
1287            * @throws SystemException if a system exception occurred
1288            */
1289            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1290            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
1291                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
1292                    long classNameId, java.lang.String articleId, java.lang.Double version,
1293                    java.lang.String title, java.lang.String description,
1294                    java.lang.String content, java.lang.String type,
1295                    java.lang.String[] ddmStructureKeys,
1296                    java.lang.String[] ddmTemplateKeys, java.util.Date displayDateGT,
1297                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
1298                    boolean andOperator, int start, int end,
1299                    com.liferay.portal.kernel.util.OrderByComparator obc)
1300                    throws com.liferay.portal.kernel.exception.SystemException;
1301    
1302            /**
1303            * Returns the number of web content articles matching the parameters,
1304            * including a keywords parameter for matching with the article's ID, title,
1305            * description, and content, a DDM structure key parameter, and a DDM
1306            * template key parameter.
1307            *
1308            * @param companyId the primary key of the web content article's company
1309            * @param groupId the primary key of the group (optionally <code>0</code>)
1310            * @param folderIds the primary keys of the web content article folders
1311            (optionally {@link java.util.Collections#EMPTY_LIST})
1312            * @param classNameId the primary key of the DDMStructure class if the web
1313            content article is related to a DDM structure, the primary key of
1314            the class name associated with the article, or {@link
1315            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1316            * @param keywords the keywords (space separated), which may occur in the
1317            web content article ID, title, description, or content
1318            (optionally <code>null</code>). If the keywords value is not
1319            <code>null</code>, the search uses the OR operator in connecting
1320            query criteria; otherwise it uses the AND operator.
1321            * @param version the web content article's version (optionally
1322            <code>null</code>)
1323            * @param type the web content article's type (optionally
1324            <code>null</code>)
1325            * @param ddmStructureKey the primary key of the web content article's DDM
1326            structure, if the article is related to a DDM structure, or
1327            <code>null</code> otherwise
1328            * @param ddmTemplateKey the primary key of the web content article's DDM
1329            template (optionally <code>null</code>). If the article is
1330            related to a DDM structure, the template's structure must match
1331            it.
1332            * @param displayDateGT the date after which a matching web content
1333            article's display date must be after (optionally
1334            <code>null</code>)
1335            * @param displayDateLT the date before which a matching web content
1336            article's display date must be before (optionally
1337            <code>null</code>)
1338            * @param status the web content article's workflow status. For more
1339            information see {@link WorkflowConstants} for constants starting
1340            with the "STATUS_" prefix.
1341            * @param reviewDate the web content article's scheduled review date
1342            (optionally <code>null</code>)
1343            * @return the number of matching web content articles
1344            * @throws SystemException if a system exception occurred
1345            */
1346            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1347            public int searchCount(long companyId, long groupId,
1348                    java.util.List<java.lang.Long> folderIds, long classNameId,
1349                    java.lang.String keywords, java.lang.Double version,
1350                    java.lang.String type, java.lang.String ddmStructureKey,
1351                    java.lang.String ddmTemplateKey, java.util.Date displayDateGT,
1352                    java.util.Date displayDateLT, int status, java.util.Date reviewDate)
1353                    throws com.liferay.portal.kernel.exception.SystemException;
1354    
1355            /**
1356            * Returns the number of web content articles matching the parameters,
1357            * including keyword parameters for article ID, title, description, and
1358            * content, a DDM structure key parameter, a DDM template key parameter, and
1359            * an AND operator switch.
1360            *
1361            * @param companyId the primary key of the web content article's company
1362            * @param groupId the primary key of the group (optionally <code>0</code>)
1363            * @param folderIds the primary keys of the web content article folders
1364            (optionally {@link java.util.Collections#EMPTY_LIST})
1365            * @param classNameId the primary key of the DDMStructure class if the web
1366            content article is related to a DDM structure, the primary key of
1367            the class name associated with the article, or {@link
1368            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1369            * @param articleId the article ID keywords (space separated, optionally
1370            <code>null</code>)
1371            * @param version the web content article's version (optionally
1372            <code>null</code>)
1373            * @param title the title keywords (space separated, optionally
1374            <code>null</code>)
1375            * @param description the description keywords (space separated, optionally
1376            <code>null</code>)
1377            * @param content the content keywords (space separated, optionally
1378            <code>null</code>)
1379            * @param type the web content article's type (optionally
1380            <code>null</code>)
1381            * @param ddmStructureKey the primary key of the web content article's DDM
1382            structure, if the article is related to a DDM structure, or
1383            <code>null</code> otherwise
1384            * @param ddmTemplateKey the primary key of the web content article's DDM
1385            template (optionally <code>null</code>). If the article is
1386            related to a DDM structure, the template's structure must match
1387            it.
1388            * @param displayDateGT the date after which a matching web content
1389            article's display date must be after (optionally
1390            <code>null</code>)
1391            * @param displayDateLT the date before which a matching web content
1392            article's display date must be before (optionally
1393            <code>null</code>)
1394            * @param status the web content article's workflow status. For more
1395            information see {@link WorkflowConstants} for constants starting
1396            with the "STATUS_" prefix.
1397            * @param reviewDate the web content article's scheduled review date
1398            (optionally <code>null</code>)
1399            * @param andOperator whether every field must match its value or keywords,
1400            or just one field must match. Group, folder IDs, class name ID,
1401            and status must all match their values.
1402            * @return the number of matching web content articles
1403            * @throws SystemException if a system exception occurred
1404            */
1405            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1406            public int searchCount(long companyId, long groupId,
1407                    java.util.List<java.lang.Long> folderIds, long classNameId,
1408                    java.lang.String articleId, java.lang.Double version,
1409                    java.lang.String title, java.lang.String description,
1410                    java.lang.String content, java.lang.String type,
1411                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
1412                    java.util.Date displayDateGT, java.util.Date displayDateLT, int status,
1413                    java.util.Date reviewDate, boolean andOperator)
1414                    throws com.liferay.portal.kernel.exception.SystemException;
1415    
1416            /**
1417            * Returns the number of web content articles matching the parameters,
1418            * including keyword parameters for article ID, title, description, and
1419            * content, a DDM structure keys (plural) parameter, a DDM template keys
1420            * (plural) parameter, and an AND operator switch.
1421            *
1422            * @param companyId the primary key of the web content article's company
1423            * @param groupId the primary key of the group (optionally <code>0</code>)
1424            * @param folderIds the primary keys of the web content article folders
1425            (optionally {@link java.util.Collections#EMPTY_LIST})
1426            * @param classNameId the primary key of the DDMStructure class if the web
1427            content article is related to a DDM structure, the primary key of
1428            the class name associated with the article, or {@link
1429            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1430            * @param articleId the article ID keywords (space separated, optionally
1431            <code>null</code>)
1432            * @param version the web content article's version (optionally
1433            <code>null</code>)
1434            * @param title the title keywords (space separated, optionally
1435            <code>null</code>)
1436            * @param description the description keywords (space separated, optionally
1437            <code>null</code>)
1438            * @param content the content keywords (space separated, optionally
1439            <code>null</code>)
1440            * @param type the web content article's type (optionally
1441            <code>null</code>)
1442            * @param ddmStructureKeys the primary keys of the web content article's
1443            DDM structures, if the article is related to a DDM structure, or
1444            <code>null</code> otherwise
1445            * @param ddmTemplateKeys the primary keys of the web content article's DDM
1446            templates (originally <code>null</code>). If the articles are
1447            related to a DDM structure, the template's structure must match
1448            it.
1449            * @param displayDateGT the date after which a matching web content
1450            article's display date must be after (optionally
1451            <code>null</code>)
1452            * @param displayDateLT the date before which a matching web content
1453            article's display date must be before (optionally
1454            <code>null</code>)
1455            * @param status the web content article's workflow status. For more
1456            information see {@link WorkflowConstants} for constants starting
1457            with the "STATUS_" prefix.
1458            * @param reviewDate the web content article's scheduled review date
1459            (optionally <code>null</code>)
1460            * @param andOperator whether every field must match its value or keywords,
1461            or just one field must match.  Group, folder IDs, class name ID,
1462            and status must all match their values.
1463            * @return the number of matching web content articles
1464            * @throws SystemException if a system exception occurred
1465            */
1466            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1467            public int searchCount(long companyId, long groupId,
1468                    java.util.List<java.lang.Long> folderIds, long classNameId,
1469                    java.lang.String articleId, java.lang.Double version,
1470                    java.lang.String title, java.lang.String description,
1471                    java.lang.String content, java.lang.String type,
1472                    java.lang.String[] ddmStructureKeys,
1473                    java.lang.String[] ddmTemplateKeys, java.util.Date displayDateGT,
1474                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
1475                    boolean andOperator)
1476                    throws com.liferay.portal.kernel.exception.SystemException;
1477    
1478            /**
1479            * Subscribes the user to notifications for the web content article matching
1480            * the group, notifying him the instant versions of the article are created,
1481            * deleted, or modified.
1482            *
1483            * @param groupId the primary key of the group
1484            * @throws PortalException if the user did not have permission to subscribe
1485            to the web content article or if a matching user or group could
1486            not be found
1487            * @throws SystemException if a system exception occurred
1488            */
1489            public void subscribe(long groupId)
1490                    throws com.liferay.portal.kernel.exception.PortalException,
1491                            com.liferay.portal.kernel.exception.SystemException;
1492    
1493            /**
1494            * Unsubscribes the user from notifications for the web content article
1495            * matching the group.
1496            *
1497            * @param groupId the primary key of the group
1498            * @throws PortalException if the user did not have permission to subscribe
1499            to the web content article or if a matching user or subscription
1500            could not be found
1501            * @throws SystemException if a system exception occurred
1502            */
1503            public void unsubscribe(long groupId)
1504                    throws com.liferay.portal.kernel.exception.PortalException,
1505                            com.liferay.portal.kernel.exception.SystemException;
1506    
1507            /**
1508            * Updates the web content article matching the version, replacing its
1509            * folder, title, description, content, and layout UUID.
1510            *
1511            * @param userId the primary key of the user updating the web content
1512            article
1513            * @param groupId the primary key of the web content article's group
1514            * @param folderId the primary key of the web content article folder
1515            * @param articleId the primary key of the web content article
1516            * @param version the web content article's version
1517            * @param titleMap the web content article's locales and localized titles
1518            * @param descriptionMap the web content article's locales and localized
1519            descriptions
1520            * @param content the HTML content wrapped in XML. For more information,
1521            see the content example in the class description for {@link
1522            JournalArticleLocalServiceImpl}.
1523            * @param layoutUuid the unique string identifying the web content
1524            article's display page
1525            * @param serviceContext the service context to be applied. Can set the
1526            modification date, expando bridge attributes, asset category IDs,
1527            asset tag names, asset link entry IDs, workflow actions, the
1528            "defaultLanguageId" and "urlTitle" attributes, and can set
1529            whether to add the default command update for the web content
1530            article. With respect to social activities, by setting the
1531            service context's command to {@link
1532            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
1533            is considered a web content update activity; otherwise it is
1534            considered a web content add activity.
1535            * @return the updated web content article
1536            * @throws PortalException if a user with the primary key or a matching web
1537            content article could not be found, or if a portal exception
1538            occurred
1539            * @throws SystemException if a system exception occurred
1540            */
1541            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
1542                    long userId, long groupId, long folderId, java.lang.String articleId,
1543                    double version,
1544                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
1545                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
1546                    java.lang.String content, java.lang.String layoutUuid,
1547                    com.liferay.portal.service.ServiceContext serviceContext)
1548                    throws com.liferay.portal.kernel.exception.PortalException,
1549                            com.liferay.portal.kernel.exception.SystemException;
1550    
1551            /**
1552            * Updates the web content article with additional parameters.
1553            *
1554            * @param groupId the primary key of the web content article's group
1555            * @param folderId the primary key of the web content article folder
1556            * @param articleId the primary key of the web content article
1557            * @param version the web content article's version
1558            * @param titleMap the web content article's locales and localized titles
1559            * @param descriptionMap the web content article's locales and localized
1560            descriptions
1561            * @param content the HTML content wrapped in XML. For more information,
1562            see the content example in the class description for {@link
1563            JournalArticleLocalServiceImpl}.
1564            * @param type the structure's type, if the web content article is related
1565            to a DDM structure. For more information, see {@link
1566            com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants}.
1567            * @param ddmStructureKey the primary key of the web content article's DDM
1568            structure, if the article is related to a DDM structure, or
1569            <code>null</code> otherwise
1570            * @param ddmTemplateKey the primary key of the web content article's DDM
1571            template (optionally <code>null</code>). If the article is
1572            related to a DDM structure, the template's structure must match
1573            it.
1574            * @param layoutUuid the unique string identifying the web content
1575            article's display page
1576            * @param displayDateMonth the month the web content article is set to
1577            display
1578            * @param displayDateDay the calendar day the web content article is set to
1579            display
1580            * @param displayDateYear the year the web content article is set to
1581            display
1582            * @param displayDateHour the hour the web content article is set to
1583            display
1584            * @param displayDateMinute the minute the web content article is set to
1585            display
1586            * @param expirationDateMonth the month the web content article is set to
1587            expire
1588            * @param expirationDateDay the calendar day the web content article is set
1589            to expire
1590            * @param expirationDateYear the year the web content article is set to
1591            expire
1592            * @param expirationDateHour the hour the web content article is set to
1593            expire
1594            * @param expirationDateMinute the minute the web content article is set to
1595            expire
1596            * @param neverExpire whether the web content article is not set to auto
1597            expire
1598            * @param reviewDateMonth the month the web content article is set for
1599            review
1600            * @param reviewDateDay the calendar day the web content article is set for
1601            review
1602            * @param reviewDateYear the year the web content article is set for review
1603            * @param reviewDateHour the hour the web content article is set for review
1604            * @param reviewDateMinute the minute the web content article is set for
1605            review
1606            * @param neverReview whether the web content article is not set for review
1607            * @param indexable whether the web content is searchable
1608            * @param smallImage whether to update web content article's a small image.
1609            A file must be passed in as <code>smallImageFile</code> value,
1610            otherwise the current small image is deleted.
1611            * @param smallImageURL the web content article's small image URL
1612            (optionally <code>null</code>)
1613            * @param smallFile the web content article's new small image file
1614            (optionally <code>null</code>). Must pass in
1615            <code>smallImage</code> value of <code>true</code> to replace the
1616            article's small image file.
1617            * @param images the web content's images (optionally <code>null</code>)
1618            * @param articleURL the web content article's accessible URL (optionally
1619            <code>null</code>)
1620            * @param serviceContext the service context to be applied. Can set the
1621            modification date, expando bridge attributes, asset category IDs,
1622            asset tag names, asset link entry IDs, workflow actions, the
1623            "defaultLanguageId" and "urlTitle" attributes, and can set
1624            whether to add the default command update for the web content
1625            article. With respect to social activities, by setting the
1626            service context's command to {@link
1627            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
1628            is considered a web content update activity; otherwise it is
1629            considered a web content add activity.
1630            * @return the updated web content article
1631            * @throws PortalException if the user did not have permission to update the
1632            web content article, if a user with the primary key or a matching
1633            web content article could not be found, or if a portal exception
1634            occurred
1635            * @throws SystemException if a system exception occurred
1636            */
1637            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
1638                    long groupId, long folderId, java.lang.String articleId,
1639                    double version,
1640                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
1641                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
1642                    java.lang.String content, java.lang.String type,
1643                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
1644                    java.lang.String layoutUuid, int displayDateMonth, int displayDateDay,
1645                    int displayDateYear, int displayDateHour, int displayDateMinute,
1646                    int expirationDateMonth, int expirationDateDay, int expirationDateYear,
1647                    int expirationDateHour, int expirationDateMinute, boolean neverExpire,
1648                    int reviewDateMonth, int reviewDateDay, int reviewDateYear,
1649                    int reviewDateHour, int reviewDateMinute, boolean neverReview,
1650                    boolean indexable, boolean smallImage, java.lang.String smallImageURL,
1651                    java.io.File smallFile, java.util.Map<java.lang.String, byte[]> images,
1652                    java.lang.String articleURL,
1653                    com.liferay.portal.service.ServiceContext serviceContext)
1654                    throws com.liferay.portal.kernel.exception.PortalException,
1655                            com.liferay.portal.kernel.exception.SystemException;
1656    
1657            /**
1658            * Updates the web content article matching the version, replacing its
1659            * folder and content.
1660            *
1661            * @param groupId the primary key of the web content article's group
1662            * @param folderId the primary key of the web content article folder
1663            * @param articleId the primary key of the web content article
1664            * @param version the web content article's version
1665            * @param content the HTML content wrapped in XML. For more information,
1666            see the content example in the class description for {@link
1667            JournalArticleLocalServiceImpl}.
1668            * @param serviceContext the service context to be applied. Can set the
1669            modification date, expando bridge attributes, asset category IDs,
1670            asset tag names, asset link entry IDs, workflow actions, the
1671            "defaultLanguageId" and "urlTitle" attributes, and can set
1672            whether to add the default command update for the web content
1673            article. With respect to social activities, by setting the
1674            service context's command to {@link
1675            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
1676            is considered a web content update activity; otherwise it is
1677            considered a web content add activity.
1678            * @return the updated web content article
1679            * @throws PortalException if the user did not have permission to update the
1680            web content article, if a user with the primary key or a matching
1681            web content article could not be found, or if a portal exception
1682            occurred
1683            * @throws SystemException if a system exception occurred
1684            */
1685            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
1686                    long groupId, long folderId, java.lang.String articleId,
1687                    double version, java.lang.String content,
1688                    com.liferay.portal.service.ServiceContext serviceContext)
1689                    throws com.liferay.portal.kernel.exception.PortalException,
1690                            com.liferay.portal.kernel.exception.SystemException;
1691    
1692            /**
1693            * @deprecated As of 6.2.0, replaced by {@link
1694            #updateArticleTranslation(long, String, double, Locale,
1695            String, String, String, Map, ServiceContext)}
1696            */
1697            public com.liferay.portlet.journal.model.JournalArticle updateArticleTranslation(
1698                    long groupId, java.lang.String articleId, double version,
1699                    java.util.Locale locale, java.lang.String title,
1700                    java.lang.String description, java.lang.String content,
1701                    java.util.Map<java.lang.String, byte[]> images)
1702                    throws com.liferay.portal.kernel.exception.PortalException,
1703                            com.liferay.portal.kernel.exception.SystemException;
1704    
1705            /**
1706            * Updates the translation of the web content article.
1707            *
1708            * @param groupId the primary key of the web content article's group
1709            * @param articleId the primary key of the web content article
1710            * @param version the web content article's version
1711            * @param locale the locale of the web content article's display template
1712            * @param title the translated web content article title
1713            * @param description the translated web content article description
1714            * @param content the HTML content wrapped in XML. For more information,
1715            see the content example in the class description for {@link
1716            JournalArticleLocalServiceImpl}.
1717            * @param images the web content's images
1718            * @param serviceContext the service context to be applied. Can set the
1719            modification date and "urlTitle" attribute for the web content
1720            article.
1721            * @return the updated web content article
1722            * @throws PortalException if the user did not have permission to update the
1723            web content article, if a user with the primary key or a matching
1724            web content article could not be found, or if a portal exception
1725            occurred
1726            * @throws SystemException if a system exception occurred
1727            */
1728            public com.liferay.portlet.journal.model.JournalArticle updateArticleTranslation(
1729                    long groupId, java.lang.String articleId, double version,
1730                    java.util.Locale locale, java.lang.String title,
1731                    java.lang.String description, java.lang.String content,
1732                    java.util.Map<java.lang.String, byte[]> images,
1733                    com.liferay.portal.service.ServiceContext serviceContext)
1734                    throws com.liferay.portal.kernel.exception.PortalException,
1735                            com.liferay.portal.kernel.exception.SystemException;
1736    
1737            /**
1738            * Updates the web content article matching the group, article ID, and
1739            * version, replacing its content.
1740            *
1741            * @param groupId the primary key of the web content article's group
1742            * @param articleId the primary key of the web content article
1743            * @param version the web content article's version
1744            * @param content the HTML content wrapped in XML. For more information,
1745            see the content example in the class description for {@link
1746            JournalArticleLocalServiceImpl}.
1747            * @return the updated web content article
1748            * @throws PortalException if the user did not have permission to update the
1749            web content article or if a matching web content article could
1750            not be found
1751            * @throws SystemException if a system exception occurred
1752            */
1753            public com.liferay.portlet.journal.model.JournalArticle updateContent(
1754                    long groupId, java.lang.String articleId, double version,
1755                    java.lang.String content)
1756                    throws com.liferay.portal.kernel.exception.PortalException,
1757                            com.liferay.portal.kernel.exception.SystemException;
1758    
1759            /**
1760            * Updates the workflow status of the web content article matching the
1761            * group, article ID, and version.
1762            *
1763            * @param groupId the primary key of the web content article's group
1764            * @param articleId the primary key of the web content article
1765            * @param version the web content article's version
1766            * @param status the web content article's workflow status. For more
1767            information see {@link WorkflowConstants} for constants starting
1768            with the "STATUS_" prefix.
1769            * @param articleURL the web content article's accessible URL
1770            * @param serviceContext the service context to be applied. Can set the
1771            modification date, portlet preferences, and can set whether to
1772            add the default command update for the web content article.
1773            * @return the updated web content article
1774            * @throws PortalException if the user did not have permission to update the
1775            web content article, if a matching web content article could not
1776            be found, or if a portal exception occurred
1777            * @throws SystemException if a system exception occurred
1778            */
1779            public com.liferay.portlet.journal.model.JournalArticle updateStatus(
1780                    long groupId, java.lang.String articleId, double version, int status,
1781                    java.lang.String articleURL,
1782                    com.liferay.portal.service.ServiceContext serviceContext)
1783                    throws com.liferay.portal.kernel.exception.PortalException,
1784                            com.liferay.portal.kernel.exception.SystemException;
1785    }