001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * The contents of this file are subject to the terms of the Liferay Enterprise
005     * Subscription License ("License"). You may not use this file except in
006     * compliance with the License. You can obtain a copy of the License by
007     * contacting Liferay, Inc. See the License for the specific language governing
008     * permissions and limitations under the License, including but not limited to
009     * distribution rights of the Software.
010     *
011     *
012     *
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            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
387            public com.liferay.portlet.journal.model.JournalArticle fetchArticle(
388                    long groupId, java.lang.String articleId)
389                    throws com.liferay.portal.kernel.exception.PortalException,
390                            com.liferay.portal.kernel.exception.SystemException;
391    
392            /**
393            * Returns the web content article with the ID.
394            *
395            * @param id the primary key of the web content article
396            * @return the web content article with the ID
397            * @throws PortalException if a matching web content article could not be
398            found or if the user did not have permission to view the web
399            content article
400            * @throws SystemException if a system exception occurred
401            */
402            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
403            public com.liferay.portlet.journal.model.JournalArticle getArticle(long id)
404                    throws com.liferay.portal.kernel.exception.PortalException,
405                            com.liferay.portal.kernel.exception.SystemException;
406    
407            /**
408            * Returns the latest approved web content article, or the latest unapproved
409            * article if none are approved. Both approved and unapproved articles must
410            * match the group and article ID.
411            *
412            * @param groupId the primary key of the web content article's group
413            * @param articleId the primary key of the web content article
414            * @return the matching web content article
415            * @throws PortalException if the user did not have permission to view the
416            web content article or if a matching web content article could
417            not be found
418            * @throws SystemException if a system exception occurred
419            */
420            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
421            public com.liferay.portlet.journal.model.JournalArticle getArticle(
422                    long groupId, java.lang.String articleId)
423                    throws com.liferay.portal.kernel.exception.PortalException,
424                            com.liferay.portal.kernel.exception.SystemException;
425    
426            /**
427            * Returns the web content article matching the group, article ID, and
428            * version.
429            *
430            * @param groupId the primary key of the web content article's group
431            * @param articleId the primary key of the web content article
432            * @param version the web content article's version
433            * @return the matching web content article
434            * @throws PortalException if the user did not have permission to view the
435            web content article or if a matching web content article could
436            not be found
437            * @throws SystemException if a system exception occurred
438            */
439            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
440            public com.liferay.portlet.journal.model.JournalArticle getArticle(
441                    long groupId, java.lang.String articleId, double version)
442                    throws com.liferay.portal.kernel.exception.PortalException,
443                            com.liferay.portal.kernel.exception.SystemException;
444    
445            /**
446            * Returns the web content article matching the group, class name, and class
447            * PK.
448            *
449            * @param groupId the primary key of the web content article's group
450            * @param className the DDMStructure class name if the web content article
451            is related to a DDM structure, the primary key of the class name
452            associated with the article, or {@link
453            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
454            * @param classPK the primary key of the DDM structure, if the the
455            DDMStructure class name is given as the <code>className</code>
456            parameter, the primary key of the class associated with the web
457            content article, or <code>0</code> otherwise
458            * @return the matching web content article
459            * @throws PortalException if a matching web content article could not be
460            found or if the user did not have permission to view the web
461            content article
462            * @throws SystemException if a system exception occurred
463            */
464            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
465            public com.liferay.portlet.journal.model.JournalArticle getArticle(
466                    long groupId, java.lang.String className, long classPK)
467                    throws com.liferay.portal.kernel.exception.PortalException,
468                            com.liferay.portal.kernel.exception.SystemException;
469    
470            /**
471            * Returns the latest web content article that is approved, or the latest
472            * unapproved article if none are approved. Both approved and unapproved
473            * articles must match the group and URL title.
474            *
475            * @param groupId the primary key of the web content article's group
476            * @param urlTitle the web content article's accessible URL title
477            * @return the matching web content article
478            * @throws PortalException if the user did not have permission to view the
479            web content article or if a portal exception occurred
480            * @throws SystemException if a system exception occurred
481            */
482            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
483            public com.liferay.portlet.journal.model.JournalArticle getArticleByUrlTitle(
484                    long groupId, java.lang.String urlTitle)
485                    throws com.liferay.portal.kernel.exception.PortalException,
486                            com.liferay.portal.kernel.exception.SystemException;
487    
488            /**
489            * Returns the web content matching the group, article ID, and version.
490            *
491            * @param groupId the primary key of the web content article's group
492            * @param articleId the primary key of the web content article
493            * @param version the web content article's version
494            * @param languageId the primary key of the language translation to get
495            * @param themeDisplay the theme display
496            * @return the matching web content
497            * @throws PortalException if the user did not have permission to view the
498            web content article, if a matching web content article or DDM
499            template could not be found, or if a portal exception occurred
500            * @throws SystemException if a system exception occurred
501            */
502            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
503            public java.lang.String getArticleContent(long groupId,
504                    java.lang.String articleId, double version,
505                    java.lang.String languageId,
506                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
507                    throws com.liferay.portal.kernel.exception.PortalException,
508                            com.liferay.portal.kernel.exception.SystemException;
509    
510            /**
511            * Returns the latest web content matching the group and article ID.
512            *
513            * @param groupId the primary key of the web content article's group
514            * @param articleId the primary key of the web content article
515            * @param languageId the primary key of the language translation to get
516            * @param themeDisplay the theme display
517            * @return the matching web content
518            * @throws PortalException if the user did not have permission to view the
519            web content article, if a matching web content article or DDM
520            template could not be found, or if a portal exception occurred
521            * @throws SystemException if a system exception occurred
522            */
523            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
524            public java.lang.String getArticleContent(long groupId,
525                    java.lang.String articleId, java.lang.String languageId,
526                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
527                    throws com.liferay.portal.kernel.exception.PortalException,
528                            com.liferay.portal.kernel.exception.SystemException;
529    
530            /**
531            * Returns all the web content articles matching the group and folder.
532            *
533            * @param groupId the primary key of the web content article's group
534            * @param folderId the primary key of the web content article folder
535            * @return the matching web content articles
536            * @throws SystemException if a system exception occurred
537            */
538            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
539            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
540                    long groupId, long folderId)
541                    throws com.liferay.portal.kernel.exception.SystemException;
542    
543            /**
544            * Returns an ordered range of all the web content articles matching the
545            * group and folder.
546            *
547            * <p>
548            * Useful when paginating results. Returns a maximum of <code>end -
549            * start</code> instances. <code>start</code> and <code>end</code> are not
550            * primary keys, they are indexes in the result set. Thus, <code>0</code>
551            * refers to the first result in the set. Setting both <code>start</code>
552            * and <code>end</code> to {@link
553            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
554            * result set.
555            * </p>
556            *
557            * @param groupId the primary key of the web content article's group
558            * @param folderId the primary key of the web content article folder
559            * @param start the lower bound of the range of web content articles to
560            return
561            * @param end the upper bound of the range of web content articles to
562            return (not inclusive)
563            * @param obc the comparator to order the web content articles
564            * @return the matching web content articles
565            * @throws SystemException if a system exception occurred
566            */
567            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
568            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
569                    long groupId, long folderId, int start, int end,
570                    com.liferay.portal.kernel.util.OrderByComparator obc)
571                    throws com.liferay.portal.kernel.exception.SystemException;
572    
573            /**
574            * Returns an ordered range of all the web content articles matching the
575            * group and article ID.
576            *
577            * <p>
578            * Useful when paginating results. Returns a maximum of <code>end -
579            * start</code> instances. <code>start</code> and <code>end</code> are not
580            * primary keys, they are indexes in the result set. Thus, <code>0</code>
581            * refers to the first result in the set. Setting both <code>start</code>
582            * and <code>end</code> to {@link
583            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
584            * result set.
585            * </p>
586            *
587            * @param groupId the primary key of the web content article's group
588            * @param articleId the primary key of the web content article
589            * @param start the lower bound of the range of web content articles to
590            return
591            * @param end the upper bound of the range of web content articles to
592            return (not inclusive)
593            * @param obc the comparator to order the web content articles
594            * @return the range of matching web content articles ordered by the
595            comparator
596            * @throws SystemException if a system exception occurred
597            */
598            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
599            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByArticleId(
600                    long groupId, java.lang.String articleId, int start, int end,
601                    com.liferay.portal.kernel.util.OrderByComparator obc)
602                    throws com.liferay.portal.kernel.exception.SystemException;
603    
604            /**
605            * Returns all the web content articles matching the group and layout UUID.
606            *
607            * @param groupId the primary key of the web content article's group
608            * @param layoutUuid the unique string identifying the web content
609            article's display page
610            * @return the matching web content articles
611            * @throws SystemException if a system exception occurred
612            */
613            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
614            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByLayoutUuid(
615                    long groupId, java.lang.String layoutUuid)
616                    throws com.liferay.portal.kernel.exception.SystemException;
617    
618            /**
619            * Returns an ordered range of all the web content articles matching the
620            * group, class name ID, DDM structure key, and workflow status.
621            *
622            * <p>
623            * Useful when paginating results. Returns a maximum of <code>end -
624            * start</code> instances. <code>start</code> and <code>end</code> are not
625            * primary keys, they are indexes in the result set. Thus, <code>0</code>
626            * refers to the first result in the set. Setting both <code>start</code>
627            * and <code>end</code> to {@link
628            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
629            * result set.
630            * </p>
631            *
632            * @param groupId the primary key of the web content article's group
633            * @param classNameId the primary key of the DDMStructure class if the web
634            content article is related to a DDM structure, the primary key of
635            the class name associated with the article, or {@link
636            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
637            * @param ddmStructureKey the primary key of the web content article's DDM
638            structure
639            * @param status the web content article's workflow status. For more
640            information see {@link WorkflowConstants} for constants starting
641            with the "STATUS_" prefix.
642            * @param start the lower bound of the range of web content articles to
643            return
644            * @param end the upper bound of the range of web content articles to
645            return (not inclusive)
646            * @param obc the comparator to order the web content articles
647            * @return the range of matching web content articles ordered by the
648            comparator
649            * @throws SystemException if a system exception occurred
650            */
651            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
652            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByStructureId(
653                    long groupId, long classNameId, java.lang.String ddmStructureKey,
654                    int status, int start, int end,
655                    com.liferay.portal.kernel.util.OrderByComparator obc)
656                    throws com.liferay.portal.kernel.exception.SystemException;
657    
658            /**
659            * Returns an ordered range of all the web content articles matching the
660            * group, default class name ID, and DDM structure key.
661            *
662            * <p>
663            * Useful when paginating results. Returns a maximum of <code>end -
664            * start</code> instances. <code>start</code> and <code>end</code> are not
665            * primary keys, they are indexes in the result set. Thus, <code>0</code>
666            * refers to the first result in the set. Setting both <code>start</code>
667            * and <code>end</code> to {@link
668            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
669            * result set.
670            * </p>
671            *
672            * @param groupId the primary key of the web content article's group
673            * @param ddmStructureKey the primary key of the web content article's DDM
674            structure
675            * @param start the lower bound of the range of web content articles to
676            return
677            * @param end the upper bound of the range of web content articles to
678            return (not inclusive)
679            * @param obc the comparator to order the web content articles
680            * @return the range of matching web content articles ordered by the
681            comparator
682            * @throws SystemException if a system exception occurred
683            */
684            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
685            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByStructureId(
686                    long groupId, java.lang.String ddmStructureKey, int start, int end,
687                    com.liferay.portal.kernel.util.OrderByComparator obc)
688                    throws com.liferay.portal.kernel.exception.SystemException;
689    
690            /**
691            * Returns the number of web content articles matching the group and folder.
692            *
693            * @param groupId the primary key of the web content article's group
694            * @param folderId the primary key of the web content article folder
695            * @return the number of matching web content articles
696            * @throws SystemException if a system exception occurred
697            */
698            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
699            public int getArticlesCount(long groupId, long folderId)
700                    throws com.liferay.portal.kernel.exception.SystemException;
701    
702            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
703            public int getArticlesCount(long groupId, long folderId, int status)
704                    throws com.liferay.portal.kernel.exception.SystemException;
705    
706            /**
707            * Returns the number of web content articles matching the group and article
708            * ID.
709            *
710            * @param groupId the primary key of the web content article's group
711            * @param articleId the primary key of the web content article
712            * @return the number of matching web content articles
713            * @throws SystemException if a system exception occurred
714            */
715            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
716            public int getArticlesCountByArticleId(long groupId,
717                    java.lang.String articleId)
718                    throws com.liferay.portal.kernel.exception.SystemException;
719    
720            /**
721            * Returns the number of web content articles matching the group, class name
722            * ID, DDM structure key, and workflow status.
723            *
724            * @param groupId the primary key of the web content article's group
725            * @param classNameId the primary key of the DDMStructure class if the web
726            content article is related to a DDM structure, the primary key of
727            the class name associated with the article, or {@link
728            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
729            * @param ddmStructureKey the primary key of the web content article's DDM
730            structure
731            * @param status the web content article's workflow status. For more
732            information see {@link WorkflowConstants} for constants starting
733            with the "STATUS_" prefix.
734            * @return the number of matching web content articles
735            * @throws SystemException if a system exception occurred
736            */
737            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
738            public int getArticlesCountByStructureId(long groupId, long classNameId,
739                    java.lang.String ddmStructureKey, int status)
740                    throws com.liferay.portal.kernel.exception.SystemException;
741    
742            /**
743            * Returns the number of web content articles matching the group, default
744            * class name ID, and DDM structure key.
745            *
746            * @param groupId the primary key of the web content article's group
747            * @param ddmStructureKey the primary key of the web content article's DDM
748            structure
749            * @return the number of matching web content articles
750            * @throws SystemException if a system exception occurred
751            */
752            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
753            public int getArticlesCountByStructureId(long groupId,
754                    java.lang.String ddmStructureKey)
755                    throws com.liferay.portal.kernel.exception.SystemException;
756    
757            /**
758            * Returns the web content article matching the URL title that is currently
759            * displayed or next to be displayed if no article is currently displayed.
760            *
761            * @param groupId the primary key of the web content article's group
762            * @param urlTitle the web content article's accessible URL title
763            * @return the web content article matching the URL title that is currently
764            displayed, or next one to be displayed if no version of the
765            article is currently displayed
766            * @throws PortalException if the user did not have permission to view the
767            web content article or if no approved matching web content
768            articles could be found
769            * @throws SystemException if a system exception occurred
770            */
771            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
772            public com.liferay.portlet.journal.model.JournalArticle getDisplayArticleByUrlTitle(
773                    long groupId, java.lang.String urlTitle)
774                    throws com.liferay.portal.kernel.exception.PortalException,
775                            com.liferay.portal.kernel.exception.SystemException;
776    
777            /**
778            * Returns the number of folders containing web content articles belonging
779            * to the group.
780            *
781            * @param groupId the primary key of the web content article's group
782            * @param folderIds the primary keys of the web content article folders
783            (optionally {@link java.util.Collections#EMPTY_LIST})
784            * @return the number of matching folders containing web content articles
785            * @throws SystemException if a system exception occurred
786            */
787            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
788            public int getFoldersAndArticlesCount(long groupId,
789                    java.util.List<java.lang.Long> folderIds)
790                    throws com.liferay.portal.kernel.exception.SystemException;
791    
792            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
793            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getGroupArticles(
794                    long groupId, long userId, long rootFolderId, int status, int start,
795                    int end,
796                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
797                    throws com.liferay.portal.kernel.exception.PortalException,
798                            com.liferay.portal.kernel.exception.SystemException;
799    
800            /**
801            * Returns an ordered range of all the web content articles matching the
802            * group, user, the root folder or any of its subfolders.
803            *
804            * @param groupId the primary key of the web content article's group
805            * @param userId the primary key of the user (optionally <code>0</code>)
806            * @param rootFolderId the primary key of the root folder to begin the
807            search
808            * @param start the lower bound of the range of web content articles to
809            return
810            * @param end the upper bound of the range of web content articles to
811            return (not inclusive)
812            * @param orderByComparator the comparator to order the web content
813            articles
814            * @return the range of matching web content articles ordered by the
815            comparator
816            * @throws PortalException if the root folder could not be found, if the
817            current user did not have permission to view the root folder, or
818            if a portal exception occurred
819            * @throws SystemException if a system exception occurred
820            */
821            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
822            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getGroupArticles(
823                    long groupId, long userId, long rootFolderId, int start, int end,
824                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
825                    throws com.liferay.portal.kernel.exception.PortalException,
826                            com.liferay.portal.kernel.exception.SystemException;
827    
828            /**
829            * Returns the number of web content articles matching the group, user, and
830            * the root folder or any of its subfolders.
831            *
832            * @param groupId the primary key of the web content article's group
833            * @param userId the primary key of the user (optionally <code>0</code>)
834            * @param rootFolderId the primary key of the root folder to begin the
835            search
836            * @return the number of matching web content articles
837            * @throws PortalException if the root folder could not be found, if the
838            current user did not have permission to view the root folder, or
839            if a portal exception occurred
840            * @throws SystemException if a system exception occurred
841            */
842            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
843            public int getGroupArticlesCount(long groupId, long userId,
844                    long rootFolderId)
845                    throws com.liferay.portal.kernel.exception.PortalException,
846                            com.liferay.portal.kernel.exception.SystemException;
847    
848            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
849            public int getGroupArticlesCount(long groupId, long userId,
850                    long rootFolderId, int status)
851                    throws com.liferay.portal.kernel.exception.PortalException,
852                            com.liferay.portal.kernel.exception.SystemException;
853    
854            /**
855            * Returns the latest web content article matching the resource primary key,
856            * preferring articles with approved workflow status.
857            *
858            * @param resourcePrimKey the primary key of the resource instance
859            * @return the latest web content article matching the resource primary key,
860            preferring articles with approved workflow status
861            * @throws PortalException if the user did not have permission to view the
862            web content article or if a matching web content article could
863            not be found
864            * @throws SystemException if a system exception occurred
865            */
866            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
867            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
868                    long resourcePrimKey)
869                    throws com.liferay.portal.kernel.exception.PortalException,
870                            com.liferay.portal.kernel.exception.SystemException;
871    
872            /**
873            * Returns the latest web content article matching the group, article ID,
874            * and workflow status.
875            *
876            * @param groupId the primary key of the web content article's group
877            * @param articleId the primary key of the web content article
878            * @param status the web content article's workflow status. For more
879            information see {@link WorkflowConstants} for constants starting
880            with the "STATUS_" prefix.
881            * @return the latest matching web content article
882            * @throws PortalException if the user did not have permission to view the
883            web content article or if a matching web content article could
884            not be found
885            * @throws SystemException if a system exception occurred
886            */
887            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
888            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
889                    long groupId, java.lang.String articleId, int status)
890                    throws com.liferay.portal.kernel.exception.PortalException,
891                            com.liferay.portal.kernel.exception.SystemException;
892    
893            /**
894            * Returns the latest web content article matching the group, class name ID,
895            * and class PK.
896            *
897            * @param groupId the primary key of the web content article's group
898            * @param className the DDMStructure class name if the web content article
899            is related to a DDM structure, the class name associated with the
900            article, or {@link JournalArticleConstants#CLASSNAME_ID_DEFAULT}
901            otherwise
902            * @param classPK the primary key of the DDM structure, if the DDMStructure
903            class name is given as the <code>className</code> parameter, the
904            primary key of the class associated with the web content article,
905            or <code>0</code> otherwise
906            * @return the latest matching web content article
907            * @throws PortalException if a matching web content article could not be
908            found or if the user did not have permission to view the web
909            content article
910            * @throws SystemException if a system exception occurred
911            */
912            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
913            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
914                    long groupId, java.lang.String className, long classPK)
915                    throws com.liferay.portal.kernel.exception.PortalException,
916                            com.liferay.portal.kernel.exception.SystemException;
917    
918            /**
919            * Moves all versions of the the web content article matching the group and
920            * article ID to the folder.
921            *
922            * @param groupId the primary key of the web content article's group
923            * @param articleId the primary key of the web content article
924            * @param newFolderId the primary key of the web content article's new
925            folder
926            * @throws PortalException if the user did not have permission to update any
927            one of the versions of the web content article or if any one of
928            the versions of the web content article could not be moved to the
929            folder
930            * @throws SystemException if a system exception occurred
931            */
932            public void moveArticle(long groupId, java.lang.String articleId,
933                    long newFolderId)
934                    throws com.liferay.portal.kernel.exception.PortalException,
935                            com.liferay.portal.kernel.exception.SystemException;
936    
937            /**
938            * Moves the web content article from the Recycle Bin to the folder.
939            *
940            * @param groupId the primary key of the web content article's group
941            * @param resourcePrimKey the primary key of the resource instance
942            * @param newFolderId the primary key of the web content article's new
943            folder
944            * @param serviceContext the service context to be applied. Can set the
945            modification date, portlet preferences, and can set whether to
946            add the default command update for the web content article. With
947            respect to social activities, by setting the service context's
948            command to {@link
949            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
950            is considered a web content update activity; otherwise it is
951            considered a web content add activity.
952            * @return the updated web content article, which was moved from the Recycle
953            Bin to the folder
954            * @throws PortalException if the user did not have permission to view or
955            update the web content article, if a matching trashed web content
956            article could not be found, or if a portal exception occurred
957            * @throws SystemException if a system exception occurred
958            */
959            public com.liferay.portlet.journal.model.JournalArticle moveArticleFromTrash(
960                    long groupId, long resourcePrimKey, long newFolderId,
961                    com.liferay.portal.service.ServiceContext serviceContext)
962                    throws com.liferay.portal.kernel.exception.PortalException,
963                            com.liferay.portal.kernel.exception.SystemException;
964    
965            /**
966            * Moves the web content article from the Recycle Bin to the folder.
967            *
968            * @param groupId the primary key of the web content article's group
969            * @param articleId the primary key of the web content article
970            * @param newFolderId the primary key of the web content article's new
971            folder
972            * @param serviceContext the service context to be applied. Can set the
973            modification date, portlet preferences, and can set whether to
974            add the default command update for the web content article. With
975            respect to social activities, by setting the service context's
976            command to {@link
977            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
978            is considered a web content update activity; otherwise it is
979            considered a web content add activity.
980            * @return the updated web content article, which was moved from the Recycle
981            Bin to the folder
982            * @throws PortalException if the user did not have permission to view or
983            update the web content article, if a trashed web content article
984            with the primary key could not be found, or if a portal exception
985            occurred
986            * @throws SystemException if a system exception occurred
987            */
988            public com.liferay.portlet.journal.model.JournalArticle moveArticleFromTrash(
989                    long groupId, java.lang.String articleId, long newFolderId,
990                    com.liferay.portal.service.ServiceContext serviceContext)
991                    throws com.liferay.portal.kernel.exception.PortalException,
992                            com.liferay.portal.kernel.exception.SystemException;
993    
994            /**
995            * Moves the latest version of the web content article matching the group
996            * and article ID to the recycle bin.
997            *
998            * @param groupId the primary key of the web content article's group
999            * @param articleId the primary key of the web content article
1000            * @return the moved web content article or <code>null</code> if no matching
1001            article was found
1002            * @throws PortalException if the user did not have permission to move the
1003            article to the Recycle Bin or if a portal exception occurred
1004            * @throws SystemException if a system exception occurred
1005            */
1006            public com.liferay.portlet.journal.model.JournalArticle moveArticleToTrash(
1007                    long groupId, java.lang.String articleId)
1008                    throws com.liferay.portal.kernel.exception.PortalException,
1009                            com.liferay.portal.kernel.exception.SystemException;
1010    
1011            /**
1012            * Removes the web content of all the company's web content articles
1013            * matching the language.
1014            *
1015            * @param companyId the primary key of the web content article's company
1016            * @param languageId the primary key of the language locale to remove
1017            * @throws PortalException if the user did not have permission to update any
1018            one of the the web content articles or if web content matching
1019            the language could not be found for any one of the articles
1020            * @throws SystemException if a system exception occurred
1021            */
1022            public void removeArticleLocale(long companyId, java.lang.String languageId)
1023                    throws com.liferay.portal.kernel.exception.PortalException,
1024                            com.liferay.portal.kernel.exception.SystemException;
1025    
1026            /**
1027            * Removes the web content of the web content article matching the group,
1028            * article ID, and version, and language.
1029            *
1030            * @param groupId the primary key of the web content article's group
1031            * @param articleId the primary key of the web content article
1032            * @param version the web content article's version
1033            * @param languageId the primary key of the language locale to remove
1034            * @return the updated web content article with the locale removed
1035            * @throws PortalException if the user did not have permission to update the
1036            web content article or if a matching web content article could
1037            not be found
1038            * @throws SystemException if a system exception occurred
1039            */
1040            public com.liferay.portlet.journal.model.JournalArticle removeArticleLocale(
1041                    long groupId, java.lang.String articleId, double version,
1042                    java.lang.String languageId)
1043                    throws com.liferay.portal.kernel.exception.PortalException,
1044                            com.liferay.portal.kernel.exception.SystemException;
1045    
1046            /**
1047            * Restores the web content article associated with the resource primary key
1048            * from the Recycle Bin.
1049            *
1050            * @param resourcePrimKey the primary key of the resource instance
1051            * @throws PortalException if a matching web content article could not be
1052            found in the Recycle Bin, if the user did not have permission to
1053            view or restore the article, or if a portal exception occurred
1054            * @throws SystemException if a system exception occurred
1055            */
1056            public void restoreArticleFromTrash(long resourcePrimKey)
1057                    throws com.liferay.portal.kernel.exception.PortalException,
1058                            com.liferay.portal.kernel.exception.SystemException;
1059    
1060            /**
1061            * Restores the web content article from the Recycle Bin.
1062            *
1063            * @param groupId the primary key of the web content article's group
1064            * @param articleId the primary key of the web content article
1065            * @throws PortalException if the web content article with the primary key
1066            could not be found in the Recycle Bin, if the user did not have
1067            permission to restore the article, or if a portal exception
1068            occurred
1069            * @throws SystemException if a system exception occurred
1070            */
1071            public void restoreArticleFromTrash(long groupId, java.lang.String articleId)
1072                    throws com.liferay.portal.kernel.exception.PortalException,
1073                            com.liferay.portal.kernel.exception.SystemException;
1074    
1075            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1076            public com.liferay.portal.kernel.search.Hits search(long groupId,
1077                    long creatorUserId, int status, int start, int end)
1078                    throws com.liferay.portal.kernel.exception.PortalException,
1079                            com.liferay.portal.kernel.exception.SystemException;
1080    
1081            /**
1082            * Returns an ordered range of all the web content articles matching the
1083            * parameters, including a keywords parameter for matching with the
1084            * article's ID, title, description, and content, a DDM structure key
1085            * parameter, and a DDM template key parameter.
1086            *
1087            * <p>
1088            * Useful when paginating results. Returns a maximum of <code>end -
1089            * start</code> instances. <code>start</code> and <code>end</code> are not
1090            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1091            * refers to the first result in the set. Setting both <code>start</code>
1092            * and <code>end</code> to {@link
1093            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1094            * result set.
1095            * </p>
1096            *
1097            * @param companyId the primary key of the web content article's company
1098            * @param groupId the primary key of the group (optionally <code>0</code>)
1099            * @param folderIds the primary keys of the web content article folders
1100            (optionally {@link java.util.Collections#EMPTY_LIST})
1101            * @param classNameId the primary key of the DDMStructure class if the web
1102            content article is related to a DDM structure, the primary key of
1103            the class name associated with the article, or {@link
1104            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1105            * @param keywords the keywords (space separated), which may occur in the
1106            web content article ID, title, description, or content
1107            (optionally <code>null</code>). If the keywords value is not
1108            <code>null</code>, the search uses the OR operator in connecting
1109            query criteria; otherwise it uses the AND operator.
1110            * @param version the web content article's version (optionally
1111            <code>null</code>)
1112            * @param type the web content article's type (optionally
1113            <code>null</code>)
1114            * @param ddmStructureKey the primary key of the web content article's DDM
1115            structure, if the article is related to a DDM structure, or
1116            <code>null</code> otherwise
1117            * @param ddmTemplateKey the primary key of the web content article's DDM
1118            template (optionally <code>null</code>). If the article is
1119            related to a DDM structure, the template's structure must match
1120            it.
1121            * @param displayDateGT the date after which a matching web content
1122            article's display date must be after (optionally
1123            <code>null</code>)
1124            * @param displayDateLT the date before which a matching web content
1125            article's display date must be before (optionally
1126            <code>null</code>)
1127            * @param status the web content article's workflow status. For more
1128            information see {@link WorkflowConstants} for constants starting
1129            with the "STATUS_" prefix.
1130            * @param reviewDate the web content article's scheduled review date
1131            (optionally <code>null</code>)
1132            * @param start the lower bound of the range of web content articles to
1133            return
1134            * @param end the upper bound of the range of web content articles to
1135            return (not inclusive)
1136            * @param obc the comparator to order the web content articles
1137            * @return the range of matching web content articles ordered by the
1138            comparator
1139            * @throws SystemException if a system exception occurred
1140            */
1141            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1142            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
1143                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
1144                    long classNameId, java.lang.String keywords, java.lang.Double version,
1145                    java.lang.String type, java.lang.String ddmStructureKey,
1146                    java.lang.String ddmTemplateKey, java.util.Date displayDateGT,
1147                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
1148                    int start, int end, com.liferay.portal.kernel.util.OrderByComparator obc)
1149                    throws com.liferay.portal.kernel.exception.SystemException;
1150    
1151            /**
1152            * Returns an ordered range of all the web content articles matching the
1153            * parameters, including keyword parameters for article ID, title,
1154            * description, and content, a DDM structure key parameter, a DDM template
1155            * key parameter, and an AND operator switch.
1156            *
1157            * <p>
1158            * Useful when paginating results. Returns a maximum of <code>end -
1159            * start</code> instances. <code>start</code> and <code>end</code> are not
1160            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1161            * refers to the first result in the set. Setting both <code>start</code>
1162            * and <code>end</code> to {@link
1163            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1164            * result set.
1165            * </p>
1166            *
1167            * @param companyId the primary key of the web content article's company
1168            * @param groupId the primary key of the group (optionally <code>0</code>)
1169            * @param folderIds the primary keys of the web content article folders
1170            (optionally {@link java.util.Collections#EMPTY_LIST})
1171            * @param classNameId the primary key of the DDMStructure class if the web
1172            content article is related to a DDM structure, the primary key of
1173            the class name associated with the article, or {@link
1174            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1175            * @param articleId the article ID keywords (space separated, optionally
1176            <code>null</code>)
1177            * @param version the web content article's version (optionally
1178            <code>null</code>)
1179            * @param title the title keywords (space separated, optionally
1180            <code>null</code>)
1181            * @param description the description keywords (space separated, optionally
1182            <code>null</code>)
1183            * @param content the content keywords (space separated, optionally
1184            <code>null</code>)
1185            * @param type the web content article's type (optionally
1186            <code>null</code>)
1187            * @param ddmStructureKey the primary key of the web content article's DDM
1188            structure, if the article is related to a DDM structure, or
1189            <code>null</code> otherwise
1190            * @param ddmTemplateKey the primary key of the web content article's DDM
1191            template (optionally <code>null</code>). If the article is
1192            related to a DDM structure, the template's structure must match
1193            it.
1194            * @param displayDateGT the date after which a matching web content
1195            article's display date must be after (optionally
1196            <code>null</code>)
1197            * @param displayDateLT the date before which a matching web content
1198            article's display date must be before (optionally
1199            <code>null</code>)
1200            * @param status the web content article's workflow status. For more
1201            information see {@link WorkflowConstants} for constants starting
1202            with the "STATUS_" prefix.
1203            * @param reviewDate the web content article's scheduled review date
1204            (optionally <code>null</code>)
1205            * @param andOperator whether every field must match its value or keywords,
1206            or just one field must match. Company, group, folder IDs, class
1207            name ID, and status must all match their values.
1208            * @param start the lower bound of the range of web content articles to
1209            return
1210            * @param end the upper bound of the range of web content articles to
1211            return (not inclusive)
1212            * @param obc the comparator to order the web content articles
1213            * @return the range of matching web content articles ordered by the
1214            comparator
1215            * @throws SystemException if a system exception occurred
1216            */
1217            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1218            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
1219                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
1220                    long classNameId, java.lang.String articleId, java.lang.Double version,
1221                    java.lang.String title, java.lang.String description,
1222                    java.lang.String content, java.lang.String type,
1223                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
1224                    java.util.Date displayDateGT, java.util.Date displayDateLT, int status,
1225                    java.util.Date reviewDate, boolean andOperator, int start, int end,
1226                    com.liferay.portal.kernel.util.OrderByComparator obc)
1227                    throws com.liferay.portal.kernel.exception.SystemException;
1228    
1229            /**
1230            * Returns an ordered range of all the web content articles matching the
1231            * parameters, including keyword parameters for article ID, title,
1232            * description, and content, a DDM structure keys (plural) parameter, a DDM
1233            * template keys (plural) parameter, and an AND operator switch.
1234            *
1235            * <p>
1236            * Useful when paginating results. Returns a maximum of <code>end -
1237            * start</code> instances. <code>start</code> and <code>end</code> are not
1238            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1239            * refers to the first result in the set. Setting both <code>start</code>
1240            * and <code>end</code> to {@link
1241            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1242            * result set.
1243            * </p>
1244            *
1245            * @param companyId the primary key of the web content article's company
1246            * @param groupId the primary key of the group (optionally <code>0</code>)
1247            * @param folderIds the primary keys of the web content article folders
1248            (optionally {@link java.util.Collections#EMPTY_LIST})
1249            * @param classNameId the primary key of the DDMStructure class if the web
1250            content article is related to a DDM structure, the primary key of
1251            the class name associated with the article, or {@link
1252            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1253            * @param articleId the article ID keywords (space separated, optionally
1254            <code>null</code>)
1255            * @param version the web content article's version (optionally
1256            <code>null</code>)
1257            * @param title the title keywords (space separated, optionally
1258            <code>null</code>)
1259            * @param description the description keywords (space separated, optionally
1260            <code>null</code>)
1261            * @param content the content keywords (space separated, optionally
1262            <code>null</code>)
1263            * @param type the web content article's type (optionally
1264            <code>null</code>)
1265            * @param ddmStructureKeys the primary keys of the web content article's
1266            DDM structures, if the article is related to a DDM structure, or
1267            <code>null</code> otherwise
1268            * @param ddmTemplateKeys the primary keys of the web content article's DDM
1269            templates (originally <code>null</code>). If the articles are
1270            related to a DDM structure, the template's structure must match
1271            it.
1272            * @param displayDateGT the date after which a matching web content
1273            article's display date must be after (optionally
1274            <code>null</code>)
1275            * @param displayDateLT the date before which a matching web content
1276            article's display date must be before (optionally
1277            <code>null</code>)
1278            * @param status the web content article's workflow status. For more
1279            information see {@link WorkflowConstants} for constants starting
1280            with the "STATUS_" prefix.
1281            * @param reviewDate the web content article's scheduled review date
1282            (optionally <code>null</code>)
1283            * @param andOperator whether every field must match its value or keywords,
1284            or just one field must match.  Company, group, folder IDs, class
1285            name ID, and status must all match their values.
1286            * @param start the lower bound of the range of web content articles to
1287            return
1288            * @param end the upper bound of the range of web content articles to
1289            return (not inclusive)
1290            * @param obc the comparator to order the web content articles
1291            * @return the range of matching web content articles ordered by the
1292            comparator
1293            * @throws SystemException if a system exception occurred
1294            */
1295            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1296            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
1297                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
1298                    long classNameId, java.lang.String articleId, java.lang.Double version,
1299                    java.lang.String title, java.lang.String description,
1300                    java.lang.String content, java.lang.String type,
1301                    java.lang.String[] ddmStructureKeys,
1302                    java.lang.String[] ddmTemplateKeys, java.util.Date displayDateGT,
1303                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
1304                    boolean andOperator, int start, int end,
1305                    com.liferay.portal.kernel.util.OrderByComparator obc)
1306                    throws com.liferay.portal.kernel.exception.SystemException;
1307    
1308            /**
1309            * Returns the number of web content articles matching the parameters,
1310            * including a keywords parameter for matching with the article's ID, title,
1311            * description, and content, a DDM structure key parameter, and a DDM
1312            * template key parameter.
1313            *
1314            * @param companyId the primary key of the web content article's company
1315            * @param groupId the primary key of the group (optionally <code>0</code>)
1316            * @param folderIds the primary keys of the web content article folders
1317            (optionally {@link java.util.Collections#EMPTY_LIST})
1318            * @param classNameId the primary key of the DDMStructure class if the web
1319            content article is related to a DDM structure, the primary key of
1320            the class name associated with the article, or {@link
1321            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1322            * @param keywords the keywords (space separated), which may occur in the
1323            web content article ID, title, description, or content
1324            (optionally <code>null</code>). If the keywords value is not
1325            <code>null</code>, the search uses the OR operator in connecting
1326            query criteria; otherwise it uses the AND operator.
1327            * @param version the web content article's version (optionally
1328            <code>null</code>)
1329            * @param type the web content article's type (optionally
1330            <code>null</code>)
1331            * @param ddmStructureKey the primary key of the web content article's DDM
1332            structure, if the article is related to a DDM structure, or
1333            <code>null</code> otherwise
1334            * @param ddmTemplateKey the primary key of the web content article's DDM
1335            template (optionally <code>null</code>). If the article is
1336            related to a DDM structure, the template's structure must match
1337            it.
1338            * @param displayDateGT the date after which a matching web content
1339            article's display date must be after (optionally
1340            <code>null</code>)
1341            * @param displayDateLT the date before which a matching web content
1342            article's display date must be before (optionally
1343            <code>null</code>)
1344            * @param status the web content article's workflow status. For more
1345            information see {@link WorkflowConstants} for constants starting
1346            with the "STATUS_" prefix.
1347            * @param reviewDate the web content article's scheduled review date
1348            (optionally <code>null</code>)
1349            * @return the number of matching web content articles
1350            * @throws SystemException if a system exception occurred
1351            */
1352            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1353            public int searchCount(long companyId, long groupId,
1354                    java.util.List<java.lang.Long> folderIds, long classNameId,
1355                    java.lang.String keywords, java.lang.Double version,
1356                    java.lang.String type, java.lang.String ddmStructureKey,
1357                    java.lang.String ddmTemplateKey, java.util.Date displayDateGT,
1358                    java.util.Date displayDateLT, int status, java.util.Date reviewDate)
1359                    throws com.liferay.portal.kernel.exception.SystemException;
1360    
1361            /**
1362            * Returns the number of web content articles matching the parameters,
1363            * including keyword parameters for article ID, title, description, and
1364            * content, a DDM structure key parameter, a DDM template key parameter, and
1365            * an AND operator switch.
1366            *
1367            * @param companyId the primary key of the web content article's company
1368            * @param groupId the primary key of the group (optionally <code>0</code>)
1369            * @param folderIds the primary keys of the web content article folders
1370            (optionally {@link java.util.Collections#EMPTY_LIST})
1371            * @param classNameId the primary key of the DDMStructure class if the web
1372            content article is related to a DDM structure, the primary key of
1373            the class name associated with the article, or {@link
1374            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1375            * @param articleId the article ID keywords (space separated, optionally
1376            <code>null</code>)
1377            * @param version the web content article's version (optionally
1378            <code>null</code>)
1379            * @param title the title keywords (space separated, optionally
1380            <code>null</code>)
1381            * @param description the description keywords (space separated, optionally
1382            <code>null</code>)
1383            * @param content the content keywords (space separated, optionally
1384            <code>null</code>)
1385            * @param type the web content article's type (optionally
1386            <code>null</code>)
1387            * @param ddmStructureKey the primary key of the web content article's DDM
1388            structure, if the article is related to a DDM structure, or
1389            <code>null</code> otherwise
1390            * @param ddmTemplateKey the primary key of the web content article's DDM
1391            template (optionally <code>null</code>). If the article is
1392            related to a DDM structure, the template's structure must match
1393            it.
1394            * @param displayDateGT the date after which a matching web content
1395            article's display date must be after (optionally
1396            <code>null</code>)
1397            * @param displayDateLT the date before which a matching web content
1398            article's display date must be before (optionally
1399            <code>null</code>)
1400            * @param status the web content article's workflow status. For more
1401            information see {@link WorkflowConstants} for constants starting
1402            with the "STATUS_" prefix.
1403            * @param reviewDate the web content article's scheduled review date
1404            (optionally <code>null</code>)
1405            * @param andOperator whether every field must match its value or keywords,
1406            or just one field must match. Group, folder IDs, class name ID,
1407            and status must all match their values.
1408            * @return the number of matching web content articles
1409            * @throws SystemException if a system exception occurred
1410            */
1411            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1412            public int searchCount(long companyId, long groupId,
1413                    java.util.List<java.lang.Long> folderIds, long classNameId,
1414                    java.lang.String articleId, java.lang.Double version,
1415                    java.lang.String title, java.lang.String description,
1416                    java.lang.String content, java.lang.String type,
1417                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
1418                    java.util.Date displayDateGT, java.util.Date displayDateLT, int status,
1419                    java.util.Date reviewDate, boolean andOperator)
1420                    throws com.liferay.portal.kernel.exception.SystemException;
1421    
1422            /**
1423            * Returns the number of web content articles matching the parameters,
1424            * including keyword parameters for article ID, title, description, and
1425            * content, a DDM structure keys (plural) parameter, a DDM template keys
1426            * (plural) parameter, and an AND operator switch.
1427            *
1428            * @param companyId the primary key of the web content article's company
1429            * @param groupId the primary key of the group (optionally <code>0</code>)
1430            * @param folderIds the primary keys of the web content article folders
1431            (optionally {@link java.util.Collections#EMPTY_LIST})
1432            * @param classNameId the primary key of the DDMStructure class if the web
1433            content article is related to a DDM structure, the primary key of
1434            the class name associated with the article, or {@link
1435            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
1436            * @param articleId the article ID keywords (space separated, optionally
1437            <code>null</code>)
1438            * @param version the web content article's version (optionally
1439            <code>null</code>)
1440            * @param title the title keywords (space separated, optionally
1441            <code>null</code>)
1442            * @param description the description keywords (space separated, optionally
1443            <code>null</code>)
1444            * @param content the content keywords (space separated, optionally
1445            <code>null</code>)
1446            * @param type the web content article's type (optionally
1447            <code>null</code>)
1448            * @param ddmStructureKeys the primary keys of the web content article's
1449            DDM structures, if the article is related to a DDM structure, or
1450            <code>null</code> otherwise
1451            * @param ddmTemplateKeys the primary keys of the web content article's DDM
1452            templates (originally <code>null</code>). If the articles are
1453            related to a DDM structure, the template's structure must match
1454            it.
1455            * @param displayDateGT the date after which a matching web content
1456            article's display date must be after (optionally
1457            <code>null</code>)
1458            * @param displayDateLT the date before which a matching web content
1459            article's display date must be before (optionally
1460            <code>null</code>)
1461            * @param status the web content article's workflow status. For more
1462            information see {@link WorkflowConstants} for constants starting
1463            with the "STATUS_" prefix.
1464            * @param reviewDate the web content article's scheduled review date
1465            (optionally <code>null</code>)
1466            * @param andOperator whether every field must match its value or keywords,
1467            or just one field must match.  Group, folder IDs, class name ID,
1468            and status must all match their values.
1469            * @return the number of matching web content articles
1470            * @throws SystemException if a system exception occurred
1471            */
1472            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1473            public int searchCount(long companyId, long groupId,
1474                    java.util.List<java.lang.Long> folderIds, long classNameId,
1475                    java.lang.String articleId, java.lang.Double version,
1476                    java.lang.String title, java.lang.String description,
1477                    java.lang.String content, java.lang.String type,
1478                    java.lang.String[] ddmStructureKeys,
1479                    java.lang.String[] ddmTemplateKeys, java.util.Date displayDateGT,
1480                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
1481                    boolean andOperator)
1482                    throws com.liferay.portal.kernel.exception.SystemException;
1483    
1484            /**
1485            * Subscribes the user to notifications for the web content article matching
1486            * the group, notifying him the instant versions of the article are created,
1487            * deleted, or modified.
1488            *
1489            * @param groupId the primary key of the group
1490            * @throws PortalException if the user did not have permission to subscribe
1491            to the web content article or if a matching user or group could
1492            not be found
1493            * @throws SystemException if a system exception occurred
1494            */
1495            public void subscribe(long groupId)
1496                    throws com.liferay.portal.kernel.exception.PortalException,
1497                            com.liferay.portal.kernel.exception.SystemException;
1498    
1499            /**
1500            * Unsubscribes the user from notifications for the web content article
1501            * matching the group.
1502            *
1503            * @param groupId the primary key of the group
1504            * @throws PortalException if the user did not have permission to subscribe
1505            to the web content article or if a matching user or subscription
1506            could not be found
1507            * @throws SystemException if a system exception occurred
1508            */
1509            public void unsubscribe(long groupId)
1510                    throws com.liferay.portal.kernel.exception.PortalException,
1511                            com.liferay.portal.kernel.exception.SystemException;
1512    
1513            /**
1514            * Updates the web content article matching the version, replacing its
1515            * folder, title, description, content, and layout UUID.
1516            *
1517            * @param userId the primary key of the user updating the web content
1518            article
1519            * @param groupId the primary key of the web content article's group
1520            * @param folderId the primary key of the web content article folder
1521            * @param articleId the primary key of the web content article
1522            * @param version the web content article's version
1523            * @param titleMap the web content article's locales and localized titles
1524            * @param descriptionMap the web content article's locales and localized
1525            descriptions
1526            * @param content the HTML content wrapped in XML. For more information,
1527            see the content example in the class description for {@link
1528            JournalArticleLocalServiceImpl}.
1529            * @param layoutUuid the unique string identifying the web content
1530            article's display page
1531            * @param serviceContext the service context to be applied. Can set the
1532            modification date, expando bridge attributes, asset category IDs,
1533            asset tag names, asset link entry IDs, workflow actions, the
1534            "defaultLanguageId" and "urlTitle" attributes, and can set
1535            whether to add the default command update for the web content
1536            article. With respect to social activities, by setting the
1537            service context's command to {@link
1538            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
1539            is considered a web content update activity; otherwise it is
1540            considered a web content add activity.
1541            * @return the updated web content article
1542            * @throws PortalException if a user with the primary key or a matching web
1543            content article could not be found, or if a portal exception
1544            occurred
1545            * @throws SystemException if a system exception occurred
1546            */
1547            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
1548                    long userId, long groupId, long folderId, java.lang.String articleId,
1549                    double version,
1550                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
1551                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
1552                    java.lang.String content, java.lang.String layoutUuid,
1553                    com.liferay.portal.service.ServiceContext serviceContext)
1554                    throws com.liferay.portal.kernel.exception.PortalException,
1555                            com.liferay.portal.kernel.exception.SystemException;
1556    
1557            /**
1558            * Updates the web content article with additional parameters.
1559            *
1560            * @param groupId the primary key of the web content article's group
1561            * @param folderId the primary key of the web content article folder
1562            * @param articleId the primary key of the web content article
1563            * @param version the web content article's version
1564            * @param titleMap the web content article's locales and localized titles
1565            * @param descriptionMap the web content article's locales and localized
1566            descriptions
1567            * @param content the HTML content wrapped in XML. For more information,
1568            see the content example in the class description for {@link
1569            JournalArticleLocalServiceImpl}.
1570            * @param type the structure's type, if the web content article is related
1571            to a DDM structure. For more information, see {@link
1572            com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants}.
1573            * @param ddmStructureKey the primary key of the web content article's DDM
1574            structure, if the article is related to a DDM structure, or
1575            <code>null</code> otherwise
1576            * @param ddmTemplateKey the primary key of the web content article's DDM
1577            template (optionally <code>null</code>). If the article is
1578            related to a DDM structure, the template's structure must match
1579            it.
1580            * @param layoutUuid the unique string identifying the web content
1581            article's display page
1582            * @param displayDateMonth the month the web content article is set to
1583            display
1584            * @param displayDateDay the calendar day the web content article is set to
1585            display
1586            * @param displayDateYear the year the web content article is set to
1587            display
1588            * @param displayDateHour the hour the web content article is set to
1589            display
1590            * @param displayDateMinute the minute the web content article is set to
1591            display
1592            * @param expirationDateMonth the month the web content article is set to
1593            expire
1594            * @param expirationDateDay the calendar day the web content article is set
1595            to expire
1596            * @param expirationDateYear the year the web content article is set to
1597            expire
1598            * @param expirationDateHour the hour the web content article is set to
1599            expire
1600            * @param expirationDateMinute the minute the web content article is set to
1601            expire
1602            * @param neverExpire whether the web content article is not set to auto
1603            expire
1604            * @param reviewDateMonth the month the web content article is set for
1605            review
1606            * @param reviewDateDay the calendar day the web content article is set for
1607            review
1608            * @param reviewDateYear the year the web content article is set for review
1609            * @param reviewDateHour the hour the web content article is set for review
1610            * @param reviewDateMinute the minute the web content article is set for
1611            review
1612            * @param neverReview whether the web content article is not set for review
1613            * @param indexable whether the web content is searchable
1614            * @param smallImage whether to update web content article's a small image.
1615            A file must be passed in as <code>smallImageFile</code> value,
1616            otherwise the current small image is deleted.
1617            * @param smallImageURL the web content article's small image URL
1618            (optionally <code>null</code>)
1619            * @param smallFile the web content article's new small image file
1620            (optionally <code>null</code>). Must pass in
1621            <code>smallImage</code> value of <code>true</code> to replace the
1622            article's small image file.
1623            * @param images the web content's images (optionally <code>null</code>)
1624            * @param articleURL the web content article's accessible URL (optionally
1625            <code>null</code>)
1626            * @param serviceContext the service context to be applied. Can set the
1627            modification date, expando bridge attributes, asset category IDs,
1628            asset tag names, asset link entry IDs, workflow actions, the
1629            "defaultLanguageId" and "urlTitle" attributes, and can set
1630            whether to add the default command update for the web content
1631            article. With respect to social activities, by setting the
1632            service context's command to {@link
1633            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
1634            is considered a web content update activity; otherwise it is
1635            considered a web content add activity.
1636            * @return the updated web content article
1637            * @throws PortalException if the user did not have permission to update the
1638            web content article, if a user with the primary key or a matching
1639            web content article could not be found, or if a portal exception
1640            occurred
1641            * @throws SystemException if a system exception occurred
1642            */
1643            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
1644                    long groupId, long folderId, java.lang.String articleId,
1645                    double version,
1646                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
1647                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
1648                    java.lang.String content, java.lang.String type,
1649                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
1650                    java.lang.String layoutUuid, int displayDateMonth, int displayDateDay,
1651                    int displayDateYear, int displayDateHour, int displayDateMinute,
1652                    int expirationDateMonth, int expirationDateDay, int expirationDateYear,
1653                    int expirationDateHour, int expirationDateMinute, boolean neverExpire,
1654                    int reviewDateMonth, int reviewDateDay, int reviewDateYear,
1655                    int reviewDateHour, int reviewDateMinute, boolean neverReview,
1656                    boolean indexable, boolean smallImage, java.lang.String smallImageURL,
1657                    java.io.File smallFile, java.util.Map<java.lang.String, byte[]> images,
1658                    java.lang.String articleURL,
1659                    com.liferay.portal.service.ServiceContext serviceContext)
1660                    throws com.liferay.portal.kernel.exception.PortalException,
1661                            com.liferay.portal.kernel.exception.SystemException;
1662    
1663            /**
1664            * Updates the web content article matching the version, replacing its
1665            * folder and content.
1666            *
1667            * @param groupId the primary key of the web content article's group
1668            * @param folderId the primary key of the web content article folder
1669            * @param articleId the primary key of the web content article
1670            * @param version the web content article's version
1671            * @param content the HTML content wrapped in XML. For more information,
1672            see the content example in the class description for {@link
1673            JournalArticleLocalServiceImpl}.
1674            * @param serviceContext the service context to be applied. Can set the
1675            modification date, expando bridge attributes, asset category IDs,
1676            asset tag names, asset link entry IDs, workflow actions, the
1677            "defaultLanguageId" and "urlTitle" attributes, and can set
1678            whether to add the default command update for the web content
1679            article. With respect to social activities, by setting the
1680            service context's command to {@link
1681            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
1682            is considered a web content update activity; otherwise it is
1683            considered a web content add activity.
1684            * @return the updated web content article
1685            * @throws PortalException if the user did not have permission to update the
1686            web content article, if a user with the primary key or a matching
1687            web content article could not be found, or if a portal exception
1688            occurred
1689            * @throws SystemException if a system exception occurred
1690            */
1691            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
1692                    long groupId, long folderId, java.lang.String articleId,
1693                    double version, java.lang.String content,
1694                    com.liferay.portal.service.ServiceContext serviceContext)
1695                    throws com.liferay.portal.kernel.exception.PortalException,
1696                            com.liferay.portal.kernel.exception.SystemException;
1697    
1698            /**
1699            * @deprecated As of 6.2.0, replaced by {@link
1700            #updateArticleTranslation(long, String, double, Locale,
1701            String, String, String, Map, ServiceContext)}
1702            */
1703            public com.liferay.portlet.journal.model.JournalArticle updateArticleTranslation(
1704                    long groupId, java.lang.String articleId, double version,
1705                    java.util.Locale locale, java.lang.String title,
1706                    java.lang.String description, java.lang.String content,
1707                    java.util.Map<java.lang.String, byte[]> images)
1708                    throws com.liferay.portal.kernel.exception.PortalException,
1709                            com.liferay.portal.kernel.exception.SystemException;
1710    
1711            /**
1712            * Updates the translation of the web content article.
1713            *
1714            * @param groupId the primary key of the web content article's group
1715            * @param articleId the primary key of the web content article
1716            * @param version the web content article's version
1717            * @param locale the locale of the web content article's display template
1718            * @param title the translated web content article title
1719            * @param description the translated web content article description
1720            * @param content the HTML content wrapped in XML. For more information,
1721            see the content example in the class description for {@link
1722            JournalArticleLocalServiceImpl}.
1723            * @param images the web content's images
1724            * @param serviceContext the service context to be applied. Can set the
1725            modification date and "urlTitle" attribute for the web content
1726            article.
1727            * @return the updated web content article
1728            * @throws PortalException if the user did not have permission to update the
1729            web content article, if a user with the primary key or a matching
1730            web content article could not be found, or if a portal exception
1731            occurred
1732            * @throws SystemException if a system exception occurred
1733            */
1734            public com.liferay.portlet.journal.model.JournalArticle updateArticleTranslation(
1735                    long groupId, java.lang.String articleId, double version,
1736                    java.util.Locale locale, java.lang.String title,
1737                    java.lang.String description, java.lang.String content,
1738                    java.util.Map<java.lang.String, byte[]> images,
1739                    com.liferay.portal.service.ServiceContext serviceContext)
1740                    throws com.liferay.portal.kernel.exception.PortalException,
1741                            com.liferay.portal.kernel.exception.SystemException;
1742    
1743            /**
1744            * Updates the web content article matching the group, article ID, and
1745            * version, replacing its content.
1746            *
1747            * @param groupId the primary key of the web content article's group
1748            * @param articleId the primary key of the web content article
1749            * @param version the web content article's version
1750            * @param content the HTML content wrapped in XML. For more information,
1751            see the content example in the class description for {@link
1752            JournalArticleLocalServiceImpl}.
1753            * @return the updated web content article
1754            * @throws PortalException if the user did not have permission to update the
1755            web content article or if a matching web content article could
1756            not be found
1757            * @throws SystemException if a system exception occurred
1758            */
1759            public com.liferay.portlet.journal.model.JournalArticle updateContent(
1760                    long groupId, java.lang.String articleId, double version,
1761                    java.lang.String content)
1762                    throws com.liferay.portal.kernel.exception.PortalException,
1763                            com.liferay.portal.kernel.exception.SystemException;
1764    
1765            /**
1766            * Updates the workflow status of the web content article matching the
1767            * group, article ID, and version.
1768            *
1769            * @param groupId the primary key of the web content article's group
1770            * @param articleId the primary key of the web content article
1771            * @param version the web content article's version
1772            * @param status the web content article's workflow status. For more
1773            information see {@link WorkflowConstants} for constants starting
1774            with the "STATUS_" prefix.
1775            * @param articleURL the web content article's accessible URL
1776            * @param serviceContext the service context to be applied. Can set the
1777            modification date, portlet preferences, and can set whether to
1778            add the default command update for the web content article.
1779            * @return the updated web content article
1780            * @throws PortalException if the user did not have permission to update the
1781            web content article, if a matching web content article could not
1782            be found, or if a portal exception occurred
1783            * @throws SystemException if a system exception occurred
1784            */
1785            public com.liferay.portlet.journal.model.JournalArticle updateStatus(
1786                    long groupId, java.lang.String articleId, double version, int status,
1787                    java.lang.String articleURL,
1788                    com.liferay.portal.service.ServiceContext serviceContext)
1789                    throws com.liferay.portal.kernel.exception.PortalException,
1790                            com.liferay.portal.kernel.exception.SystemException;
1791    }