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.search.IndexableType;
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.model.SystemEventConstants;
026    import com.liferay.portal.service.BaseLocalService;
027    import com.liferay.portal.service.PersistedModelLocalService;
028    
029    /**
030     * Provides the local service interface for JournalArticle. Methods of this
031     * service will not have security checks based on the propagated JAAS
032     * credentials because this service can only be accessed from within the same
033     * VM.
034     *
035     * @author Brian Wing Shun Chan
036     * @see JournalArticleLocalServiceUtil
037     * @see com.liferay.portlet.journal.service.base.JournalArticleLocalServiceBaseImpl
038     * @see com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl
039     * @generated
040     */
041    @ProviderType
042    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
043            PortalException.class, SystemException.class})
044    public interface JournalArticleLocalService extends BaseLocalService,
045            PersistedModelLocalService {
046            /*
047             * NOTE FOR DEVELOPERS:
048             *
049             * Never modify or reference this interface directly. Always use {@link JournalArticleLocalServiceUtil} to access the journal article local service. Add custom service methods to {@link com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
050             */
051    
052            /**
053            * Adds the journal article to the database. Also notifies the appropriate model listeners.
054            *
055            * @param journalArticle the journal article
056            * @return the journal article that was added
057            * @throws SystemException if a system exception occurred
058            */
059            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
060            public com.liferay.portlet.journal.model.JournalArticle addJournalArticle(
061                    com.liferay.portlet.journal.model.JournalArticle journalArticle)
062                    throws com.liferay.portal.kernel.exception.SystemException;
063    
064            /**
065            * Creates a new journal article with the primary key. Does not add the journal article to the database.
066            *
067            * @param id the primary key for the new journal article
068            * @return the new journal article
069            */
070            public com.liferay.portlet.journal.model.JournalArticle createJournalArticle(
071                    long id);
072    
073            /**
074            * Deletes the journal article with the primary key from the database. Also notifies the appropriate model listeners.
075            *
076            * @param id the primary key of the journal article
077            * @return the journal article that was removed
078            * @throws PortalException if a journal article with the primary key could not be found
079            * @throws SystemException if a system exception occurred
080            */
081            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
082            public com.liferay.portlet.journal.model.JournalArticle deleteJournalArticle(
083                    long id)
084                    throws com.liferay.portal.kernel.exception.PortalException,
085                            com.liferay.portal.kernel.exception.SystemException;
086    
087            /**
088            * Deletes the journal article from the database. Also notifies the appropriate model listeners.
089            *
090            * @param journalArticle the journal article
091            * @return the journal article that was removed
092            * @throws SystemException if a system exception occurred
093            */
094            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
095            public com.liferay.portlet.journal.model.JournalArticle deleteJournalArticle(
096                    com.liferay.portlet.journal.model.JournalArticle journalArticle)
097                    throws com.liferay.portal.kernel.exception.SystemException;
098    
099            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
100    
101            /**
102            * Performs a dynamic query on the database and returns the matching rows.
103            *
104            * @param dynamicQuery the dynamic query
105            * @return the matching rows
106            * @throws SystemException if a system exception occurred
107            */
108            @SuppressWarnings("rawtypes")
109            public java.util.List dynamicQuery(
110                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
111                    throws com.liferay.portal.kernel.exception.SystemException;
112    
113            /**
114            * Performs a dynamic query on the database and returns a range of the matching rows.
115            *
116            * <p>
117            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.journal.model.impl.JournalArticleModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
118            * </p>
119            *
120            * @param dynamicQuery the dynamic query
121            * @param start the lower bound of the range of model instances
122            * @param end the upper bound of the range of model instances (not inclusive)
123            * @return the range of matching rows
124            * @throws SystemException if a system exception occurred
125            */
126            @SuppressWarnings("rawtypes")
127            public java.util.List dynamicQuery(
128                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
129                    int end) throws com.liferay.portal.kernel.exception.SystemException;
130    
131            /**
132            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
133            *
134            * <p>
135            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.journal.model.impl.JournalArticleModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
136            * </p>
137            *
138            * @param dynamicQuery the dynamic query
139            * @param start the lower bound of the range of model instances
140            * @param end the upper bound of the range of model instances (not inclusive)
141            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
142            * @return the ordered range of matching rows
143            * @throws SystemException if a system exception occurred
144            */
145            @SuppressWarnings("rawtypes")
146            public java.util.List dynamicQuery(
147                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
148                    int end,
149                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
150                    throws com.liferay.portal.kernel.exception.SystemException;
151    
152            /**
153            * Returns the number of rows that match the dynamic query.
154            *
155            * @param dynamicQuery the dynamic query
156            * @return the number of rows that match the dynamic query
157            * @throws SystemException if a system exception occurred
158            */
159            public long dynamicQueryCount(
160                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
161                    throws com.liferay.portal.kernel.exception.SystemException;
162    
163            /**
164            * Returns the number of rows that match the dynamic query.
165            *
166            * @param dynamicQuery the dynamic query
167            * @param projection the projection to apply to the query
168            * @return the number of rows that match the dynamic query
169            * @throws SystemException if a system exception occurred
170            */
171            public long dynamicQueryCount(
172                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery,
173                    com.liferay.portal.kernel.dao.orm.Projection projection)
174                    throws com.liferay.portal.kernel.exception.SystemException;
175    
176            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
177            public com.liferay.portlet.journal.model.JournalArticle fetchJournalArticle(
178                    long id) throws com.liferay.portal.kernel.exception.SystemException;
179    
180            /**
181            * Returns the journal article with the matching UUID and company.
182            *
183            * @param uuid the journal article's UUID
184            * @param companyId the primary key of the company
185            * @return the matching journal article, or <code>null</code> if a matching journal article could not be found
186            * @throws SystemException if a system exception occurred
187            */
188            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
189            public com.liferay.portlet.journal.model.JournalArticle fetchJournalArticleByUuidAndCompanyId(
190                    java.lang.String uuid, long companyId)
191                    throws com.liferay.portal.kernel.exception.SystemException;
192    
193            /**
194            * Returns the journal article matching the UUID and group.
195            *
196            * @param uuid the journal article's UUID
197            * @param groupId the primary key of the group
198            * @return the matching journal article, or <code>null</code> if a matching journal article could not be found
199            * @throws SystemException if a system exception occurred
200            */
201            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
202            public com.liferay.portlet.journal.model.JournalArticle fetchJournalArticleByUuidAndGroupId(
203                    java.lang.String uuid, long groupId)
204                    throws com.liferay.portal.kernel.exception.SystemException;
205    
206            /**
207            * Returns the journal article with the primary key.
208            *
209            * @param id the primary key of the journal article
210            * @return the journal article
211            * @throws PortalException if a journal article with the primary key could not be found
212            * @throws SystemException if a system exception occurred
213            */
214            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
215            public com.liferay.portlet.journal.model.JournalArticle getJournalArticle(
216                    long id)
217                    throws com.liferay.portal.kernel.exception.PortalException,
218                            com.liferay.portal.kernel.exception.SystemException;
219    
220            @Override
221            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
222            public com.liferay.portal.model.PersistedModel getPersistedModel(
223                    java.io.Serializable primaryKeyObj)
224                    throws com.liferay.portal.kernel.exception.PortalException,
225                            com.liferay.portal.kernel.exception.SystemException;
226    
227            /**
228            * Returns the journal article with the matching UUID and company.
229            *
230            * @param uuid the journal article's UUID
231            * @param companyId the primary key of the company
232            * @return the matching journal article
233            * @throws PortalException if a matching journal article could not be found
234            * @throws SystemException if a system exception occurred
235            */
236            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
237            public com.liferay.portlet.journal.model.JournalArticle getJournalArticleByUuidAndCompanyId(
238                    java.lang.String uuid, long companyId)
239                    throws com.liferay.portal.kernel.exception.PortalException,
240                            com.liferay.portal.kernel.exception.SystemException;
241    
242            /**
243            * Returns the journal article matching the UUID and group.
244            *
245            * @param uuid the journal article's UUID
246            * @param groupId the primary key of the group
247            * @return the matching journal article
248            * @throws PortalException if a matching journal article could not be found
249            * @throws SystemException if a system exception occurred
250            */
251            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
252            public com.liferay.portlet.journal.model.JournalArticle getJournalArticleByUuidAndGroupId(
253                    java.lang.String uuid, long groupId)
254                    throws com.liferay.portal.kernel.exception.PortalException,
255                            com.liferay.portal.kernel.exception.SystemException;
256    
257            /**
258            * Returns a range of all the journal articles.
259            *
260            * <p>
261            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.journal.model.impl.JournalArticleModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
262            * </p>
263            *
264            * @param start the lower bound of the range of journal articles
265            * @param end the upper bound of the range of journal articles (not inclusive)
266            * @return the range of journal articles
267            * @throws SystemException if a system exception occurred
268            */
269            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
270            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getJournalArticles(
271                    int start, int end)
272                    throws com.liferay.portal.kernel.exception.SystemException;
273    
274            /**
275            * Returns the number of journal articles.
276            *
277            * @return the number of journal articles
278            * @throws SystemException if a system exception occurred
279            */
280            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
281            public int getJournalArticlesCount()
282                    throws com.liferay.portal.kernel.exception.SystemException;
283    
284            /**
285            * Updates the journal article in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
286            *
287            * @param journalArticle the journal article
288            * @return the journal article that was updated
289            * @throws SystemException if a system exception occurred
290            */
291            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
292            public com.liferay.portlet.journal.model.JournalArticle updateJournalArticle(
293                    com.liferay.portlet.journal.model.JournalArticle journalArticle)
294                    throws com.liferay.portal.kernel.exception.SystemException;
295    
296            /**
297            * Returns the Spring bean ID for this bean.
298            *
299            * @return the Spring bean ID for this bean
300            */
301            public java.lang.String getBeanIdentifier();
302    
303            /**
304            * Sets the Spring bean ID for this bean.
305            *
306            * @param beanIdentifier the Spring bean ID for this bean
307            */
308            public void setBeanIdentifier(java.lang.String beanIdentifier);
309    
310            /**
311            * Adds a web content article with additional parameters.
312            *
313            * @param userId the primary key of the web content article's creator/owner
314            * @param groupId the primary key of the web content article's group
315            * @param folderId the primary key of the web content article folder
316            * @param classNameId the primary key of the DDMStructure class if the web
317            content article is related to a DDM structure, the primary key of
318            the class name associated with the article, or {@link
319            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
320            * @param classPK the primary key of the DDM structure, if the primary key
321            of the DDMStructure class is given as the
322            <code>classNameId</code> parameter, the primary key of the class
323            associated with the web content article, or <code>0</code>
324            otherwise
325            * @param articleId the primary key of the web content article
326            * @param autoArticleId whether to auto generate the web content article ID
327            * @param version the web content article's version
328            * @param titleMap the web content article's locales and localized titles
329            * @param descriptionMap the web content article's locales and localized
330            descriptions
331            * @param content the HTML content wrapped in XML. For more information,
332            see the content example in the class description for {@link
333            JournalArticleLocalServiceImpl}.
334            * @param type the structure's type, if the web content article is related
335            to a DDM structure. For more information, see {@link
336            com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants}.
337            * @param ddmStructureKey the primary key of the web content article's DDM
338            structure, if the article is related to a DDM structure, or
339            <code>null</code> otherwise
340            * @param ddmTemplateKey the primary key of the web content article's DDM
341            template (optionally <code>null</code>). If the article is
342            related to a DDM structure, the template's structure must match
343            it.
344            * @param layoutUuid the unique string identifying the web content
345            article's display page
346            * @param displayDateMonth the month the web content article is set to
347            display
348            * @param displayDateDay the calendar day the web content article is set to
349            display
350            * @param displayDateYear the year the web content article is set to
351            display
352            * @param displayDateHour the hour the web content article is set to
353            display
354            * @param displayDateMinute the minute the web content article is set to
355            display
356            * @param expirationDateMonth the month the web content article is set to
357            expire
358            * @param expirationDateDay the calendar day the web content article is set
359            to expire
360            * @param expirationDateYear the year the web content article is set to
361            expire
362            * @param expirationDateHour the hour the web content article is set to
363            expire
364            * @param expirationDateMinute the minute the web content article is set to
365            expire
366            * @param neverExpire whether the web content article is not set to auto
367            expire
368            * @param reviewDateMonth the month the web content article is set for
369            review
370            * @param reviewDateDay the calendar day the web content article is set for
371            review
372            * @param reviewDateYear the year the web content article is set for review
373            * @param reviewDateHour the hour the web content article is set for review
374            * @param reviewDateMinute the minute the web content article is set for
375            review
376            * @param neverReview whether the web content article is not set for review
377            * @param indexable whether the web content article is searchable
378            * @param smallImage whether the web content article has a small image
379            * @param smallImageURL the web content article's small image URL
380            * @param smallImageFile the web content article's small image file
381            * @param images the web content's images
382            * @param articleURL the web content article's accessible URL
383            * @param serviceContext the service context to be applied. Can set the
384            UUID, creation date, modification date, expando bridge
385            attributes, guest permissions, group permissions, asset category
386            IDs, asset tag names, asset link entry IDs, the "urlTitle"
387            attribute, and workflow actions for the web content article. Can
388            also set whether to add the default guest and group permissions.
389            * @return the web content article
390            * @throws PortalException if a portal exception occurred
391            * @throws SystemException if a system exception occurred
392            */
393            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
394            public com.liferay.portlet.journal.model.JournalArticle addArticle(
395                    long userId, long groupId, long folderId, long classNameId,
396                    long classPK, java.lang.String articleId, boolean autoArticleId,
397                    double version,
398                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
399                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
400                    java.lang.String content, java.lang.String type,
401                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
402                    java.lang.String layoutUuid, int displayDateMonth, int displayDateDay,
403                    int displayDateYear, int displayDateHour, int displayDateMinute,
404                    int expirationDateMonth, int expirationDateDay, int expirationDateYear,
405                    int expirationDateHour, int expirationDateMinute, boolean neverExpire,
406                    int reviewDateMonth, int reviewDateDay, int reviewDateYear,
407                    int reviewDateHour, int reviewDateMinute, boolean neverReview,
408                    boolean indexable, boolean smallImage, java.lang.String smallImageURL,
409                    java.io.File smallImageFile,
410                    java.util.Map<java.lang.String, byte[]> images,
411                    java.lang.String articleURL,
412                    com.liferay.portal.service.ServiceContext serviceContext)
413                    throws com.liferay.portal.kernel.exception.PortalException,
414                            com.liferay.portal.kernel.exception.SystemException;
415    
416            /**
417            * Adds a web content article.
418            *
419            * @param userId the primary key of the web content article's creator/owner
420            * @param groupId the primary key of the web content article's group
421            * @param folderId the primary key of the web content article folder
422            * @param titleMap the web content article's locales and localized titles
423            * @param descriptionMap the web content article's locales and localized
424            descriptions
425            * @param content the HTML content wrapped in XML. For more information,
426            see the content example in the class description for {@link
427            JournalArticleLocalServiceImpl}.
428            * @param ddmStructureKey the primary key of the web content article's DDM
429            structure, if the article is related to a DDM structure, or
430            <code>null</code> otherwise
431            * @param ddmTemplateKey the primary key of the web content article's DDM
432            template (optionally <code>null</code>). If the article is
433            related to a DDM structure, the template's structure must match
434            it.
435            * @param serviceContext the service context to be applied. Can set the
436            UUID, creation date, modification date, expando bridge
437            attributes, guest permissions, group permissions, asset category
438            IDs, asset tag names, asset link entry IDs, the "urlTitle"
439            attribute, and workflow actions for the web content article. Can
440            also set whether to add the default guest and group permissions.
441            * @return the web content article
442            * @throws PortalException if a portal exception occurred
443            * @throws SystemException if a system exception occurred
444            */
445            public com.liferay.portlet.journal.model.JournalArticle addArticle(
446                    long userId, long groupId, long folderId,
447                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
448                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
449                    java.lang.String content, java.lang.String ddmStructureKey,
450                    java.lang.String ddmTemplateKey,
451                    com.liferay.portal.service.ServiceContext serviceContext)
452                    throws com.liferay.portal.kernel.exception.PortalException,
453                            com.liferay.portal.kernel.exception.SystemException;
454    
455            /**
456            * Adds the resources to the web content article.
457            *
458            * @param article the web content article
459            * @param addGroupPermissions whether to add group permissions
460            * @param addGuestPermissions whether to add guest permissions
461            * @throws PortalException if no portal actions could be found associated
462            with the web content article or if a portal exception occurred
463            * @throws SystemException if a system exception occurred
464            */
465            public void addArticleResources(
466                    com.liferay.portlet.journal.model.JournalArticle article,
467                    boolean addGroupPermissions, boolean addGuestPermissions)
468                    throws com.liferay.portal.kernel.exception.PortalException,
469                            com.liferay.portal.kernel.exception.SystemException;
470    
471            /**
472            * Adds the model resources with the permissions to the web content article.
473            *
474            * @param article the web content article to add resources to
475            * @param groupPermissions the group permissions to be added
476            * @param guestPermissions the guest permissions to be added
477            * @throws PortalException if a portal exception occurred
478            * @throws SystemException if a system exception occurred
479            */
480            public void addArticleResources(
481                    com.liferay.portlet.journal.model.JournalArticle article,
482                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
483                    throws com.liferay.portal.kernel.exception.PortalException,
484                            com.liferay.portal.kernel.exception.SystemException;
485    
486            /**
487            * Adds the resources to the most recently created web content article.
488            *
489            * @param groupId the primary key of the web content article's group
490            * @param articleId the primary key of the web content article
491            * @param addGroupPermissions whether to add group permissions
492            * @param addGuestPermissions whether to add guest permissions
493            * @throws PortalException if a portal exception occurred
494            * @throws SystemException if a system exception occurred
495            */
496            public void addArticleResources(long groupId, java.lang.String articleId,
497                    boolean addGroupPermissions, boolean addGuestPermissions)
498                    throws com.liferay.portal.kernel.exception.PortalException,
499                            com.liferay.portal.kernel.exception.SystemException;
500    
501            /**
502            * Adds the resources with the permissions to the most recently created web
503            * content article.
504            *
505            * @param groupId the primary key of the web content article's group
506            * @param articleId the primary key of the web content article
507            * @param groupPermissions the group permissions to be added
508            * @param guestPermissions the guest permissions to be added
509            * @throws PortalException if a portal exception occurred
510            * @throws SystemException if a system exception occurred
511            */
512            public void addArticleResources(long groupId, java.lang.String articleId,
513                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
514                    throws com.liferay.portal.kernel.exception.PortalException,
515                            com.liferay.portal.kernel.exception.SystemException;
516    
517            /**
518            * Returns the web content article with the group, article ID, and version.
519            * This method checks for the article's resource primary key and, if not
520            * found, creates a new one.
521            *
522            * @param groupId the primary key of the web content article's group
523            * @param articleId the primary key of the web content article
524            * @param version the web content article's version
525            * @return the matching web content article
526            * @throws PortalException if a matching web content article could not be
527            found
528            * @throws SystemException if a system exception occurred
529            */
530            public com.liferay.portlet.journal.model.JournalArticle checkArticleResourcePrimKey(
531                    long groupId, java.lang.String articleId, double version)
532                    throws com.liferay.portal.kernel.exception.PortalException,
533                            com.liferay.portal.kernel.exception.SystemException;
534    
535            /**
536            * Checks all web content articles by handling their expirations and sending
537            * review notifications based on their current workflow.
538            *
539            * @throws PortalException if a portal exception occurred
540            * @throws SystemException if a system exception occurred
541            */
542            public void checkArticles()
543                    throws com.liferay.portal.kernel.exception.PortalException,
544                            com.liferay.portal.kernel.exception.SystemException;
545    
546            /**
547            * Checks the web content article matching the group, article ID, and
548            * version, replacing escaped newline and return characters with non-escaped
549            * newline and return characters.
550            *
551            * @param groupId the primary key of the web content article's group
552            * @param articleId the primary key of the web content article
553            * @param version the web content article's version
554            * @throws PortalException if a matching web content article could not be
555            found
556            * @throws SystemException if a system exception occurred
557            */
558            public void checkNewLine(long groupId, java.lang.String articleId,
559                    double version)
560                    throws com.liferay.portal.kernel.exception.PortalException,
561                            com.liferay.portal.kernel.exception.SystemException;
562    
563            /**
564            * Checks the web content article matching the group, article ID, and
565            * version for an associated structure. If no structure is associated,
566            * return; otherwise check that the article and structure match.
567            *
568            * @param groupId the primary key of the web content article's group
569            * @param articleId the primary key of the web content article
570            * @param version the web content article's version
571            * @throws PortalException if a matching web content article could not be
572            found, if the article's structure does not match it, or if a
573            portal exception occurred
574            * @throws SystemException if a system exception occurred
575            */
576            public void checkStructure(long groupId, java.lang.String articleId,
577                    double version)
578                    throws com.liferay.portal.kernel.exception.PortalException,
579                            com.liferay.portal.kernel.exception.SystemException;
580    
581            /**
582            * Copies the web content article matching the group, article ID, and
583            * version. This method creates a new article, extracting all the values
584            * from the old one and updating its article ID.
585            *
586            * @param userId the primary key of the web content article's creator/owner
587            * @param groupId the primary key of the web content article's group
588            * @param oldArticleId the primary key of the old web content article
589            * @param newArticleId the primary key of the new web content article
590            * @param autoArticleId whether to auto-generate the web content article ID
591            * @param version the web content article's version
592            * @return the new web content article
593            * @throws PortalException if a matching web content article could not be
594            found or if a portal exception occurred
595            * @throws SystemException if a system exception occurred
596            */
597            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
598            public com.liferay.portlet.journal.model.JournalArticle copyArticle(
599                    long userId, long groupId, java.lang.String oldArticleId,
600                    java.lang.String newArticleId, boolean autoArticleId, double version)
601                    throws com.liferay.portal.kernel.exception.PortalException,
602                            com.liferay.portal.kernel.exception.SystemException;
603    
604            /**
605            * Deletes the web content article and its resources.
606            *
607            * @param article the web content article
608            * @throws PortalException if a portal exception occurred
609            * @throws SystemException if a system exception occurred
610            */
611            @com.liferay.portal.kernel.systemevent.SystemEvent(action = SystemEventConstants.ACTION_SKIP, send = false)
612            public com.liferay.portlet.journal.model.JournalArticle deleteArticle(
613                    com.liferay.portlet.journal.model.JournalArticle article)
614                    throws com.liferay.portal.kernel.exception.PortalException,
615                            com.liferay.portal.kernel.exception.SystemException;
616    
617            /**
618            * Deletes the web content article and its resources, optionally sending
619            * email notifying denial of the article if it had not yet been approved.
620            *
621            * @param article the web content article
622            * @param articleURL the web content article's accessible URL to include in
623            email notifications (optionally <code>null</code>)
624            * @param serviceContext the service context to be applied (optionally
625            <code>null</code>). Can set the portlet preferences that include
626            email information to notify recipients of the unapproved web
627            content's denial.
628            * @throws PortalException if a portal exception occurred
629            * @throws SystemException if a system exception occurred
630            */
631            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
632            @com.liferay.portal.kernel.systemevent.SystemEvent(action = SystemEventConstants.ACTION_SKIP, send = false)
633            public com.liferay.portlet.journal.model.JournalArticle deleteArticle(
634                    com.liferay.portlet.journal.model.JournalArticle article,
635                    java.lang.String articleURL,
636                    com.liferay.portal.service.ServiceContext serviceContext)
637                    throws com.liferay.portal.kernel.exception.PortalException,
638                            com.liferay.portal.kernel.exception.SystemException;
639    
640            /**
641            * Deletes the web content article and its resources matching the group,
642            * article ID, and version, optionally sending email notifying denial of the
643            * web content article if it had not yet been approved.
644            *
645            * @param groupId the primary key of the web content article's group
646            * @param articleId the primary key of the web content article
647            * @param version the web content article's version
648            * @param articleURL the web content article's accessible URL
649            * @param serviceContext the service context to be applied. Can set the
650            portlet preferences that include email information to notify
651            recipients of the unapproved web content article's denial.
652            * @throws PortalException if a matching web content article could not be
653            found or if a portal exception occurred
654            * @throws SystemException if a system exception occurred
655            */
656            public com.liferay.portlet.journal.model.JournalArticle deleteArticle(
657                    long groupId, java.lang.String articleId, double version,
658                    java.lang.String articleURL,
659                    com.liferay.portal.service.ServiceContext serviceContext)
660                    throws com.liferay.portal.kernel.exception.PortalException,
661                            com.liferay.portal.kernel.exception.SystemException;
662    
663            /**
664            * Deletes all web content articles and their resources matching the group
665            * and article ID, optionally sending email notifying denial of article if
666            * it had not yet been approved.
667            *
668            * @param groupId the primary key of the web content article's group
669            * @param articleId the primary key of the web content article
670            * @param serviceContext the service context to be applied. Can set the
671            portlet preferences that include email information to notify
672            recipients of the unapproved web content article's denial.
673            * @throws PortalException if a portal exception occurred
674            * @throws SystemException if a system exception occurred
675            */
676            public void deleteArticle(long groupId, java.lang.String articleId,
677                    com.liferay.portal.service.ServiceContext serviceContext)
678                    throws com.liferay.portal.kernel.exception.PortalException,
679                            com.liferay.portal.kernel.exception.SystemException;
680    
681            /**
682            * Deletes all the group's web content articles and resources.
683            *
684            * @param groupId the primary key of the web content article's group
685            * @throws PortalException if a portal exception occurred
686            * @throws SystemException if a system exception occurred
687            */
688            public void deleteArticles(long groupId)
689                    throws com.liferay.portal.kernel.exception.PortalException,
690                            com.liferay.portal.kernel.exception.SystemException;
691    
692            /**
693            * Deletes all the group's web content articles and resources in the folder,
694            * including recycled articles.
695            *
696            * @param groupId the primary key of the web content article's group
697            * @param folderId the primary key of the web content article folder
698            * @throws PortalException if a portal exception occurred
699            * @throws SystemException if a system exception occurred
700            */
701            public void deleteArticles(long groupId, long folderId)
702                    throws com.liferay.portal.kernel.exception.PortalException,
703                            com.liferay.portal.kernel.exception.SystemException;
704    
705            /**
706            * Deletes all the group's web content articles and resources in the folder,
707            * optionally including recycled articles.
708            *
709            * @param groupId the primary key of the web content article's group
710            * @param folderId the primary key of the web content article folder
711            * @param includeTrashedEntries whether to include recycled web content
712            articles
713            * @throws PortalException if a portal exception occurred
714            * @throws SystemException if a system exception occurred
715            */
716            public void deleteArticles(long groupId, long folderId,
717                    boolean includeTrashedEntries)
718                    throws com.liferay.portal.kernel.exception.PortalException,
719                            com.liferay.portal.kernel.exception.SystemException;
720    
721            public void deleteArticles(long groupId, java.lang.String className,
722                    long classPK)
723                    throws com.liferay.portal.kernel.exception.PortalException,
724                            com.liferay.portal.kernel.exception.SystemException;
725    
726            /**
727            * Deletes the layout's association with the web content articles for the
728            * group.
729            *
730            * @param groupId the primary key of the web content article's group
731            * @param layoutUuid the unique string identifying the web content
732            article's display page
733            * @throws SystemException if a system exception occurred
734            */
735            public void deleteLayoutArticleReferences(long groupId,
736                    java.lang.String layoutUuid)
737                    throws com.liferay.portal.kernel.exception.SystemException;
738    
739            /**
740            * Expires the web content article matching the group, article ID, and
741            * version.
742            *
743            * @param userId the primary key of the user updating the web content
744            article
745            * @param groupId the primary key of the web content article's group
746            * @param articleId the primary key of the web content article
747            * @param version the web content article's version
748            * @param articleURL the web content article's accessible URL
749            * @param serviceContext the service context to be applied. Can set the
750            modification date, status date, portlet preferences, and can set
751            whether to add the default command update for the web content
752            article. With respect to social activities, by setting the
753            service context's command to {@link
754            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
755            is considered a web content update activity; otherwise it is
756            considered a web content add activity.
757            * @return the web content article
758            * @throws PortalException if a matching web content article could not be
759            found or if a portal exception occurred
760            * @throws SystemException if a system exception occurred
761            */
762            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
763            public com.liferay.portlet.journal.model.JournalArticle expireArticle(
764                    long userId, long groupId, java.lang.String articleId, double version,
765                    java.lang.String articleURL,
766                    com.liferay.portal.service.ServiceContext serviceContext)
767                    throws com.liferay.portal.kernel.exception.PortalException,
768                            com.liferay.portal.kernel.exception.SystemException;
769    
770            /**
771            * Expires the web content article matching the group and article ID,
772            * expiring all of its versions if the
773            * <code>journal.article.expire.all.versions</code> portal property is
774            * <code>true</code>, otherwise expiring only its latest approved version.
775            *
776            * @param userId the primary key of the user updating the web content
777            article
778            * @param groupId the primary key of the web content article's group
779            * @param articleId the primary key of the web content article
780            * @param articleURL the web content article's accessible URL
781            * @param serviceContext the service context to be applied. Can set the
782            modification date, status date, portlet preferences, and can set
783            whether to add the default command update for the web content
784            article. With respect to social activities, by setting the
785            service context's command to {@link
786            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
787            is considered a web content update activity; otherwise it is
788            considered a web content add activity.
789            * @throws PortalException if a matching web content article could not be
790            found or if a portal exception occurred
791            * @throws SystemException if a system exception occurred
792            */
793            public void expireArticle(long userId, long groupId,
794                    java.lang.String articleId, java.lang.String articleURL,
795                    com.liferay.portal.service.ServiceContext serviceContext)
796                    throws com.liferay.portal.kernel.exception.PortalException,
797                            com.liferay.portal.kernel.exception.SystemException;
798    
799            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
800            public com.liferay.portlet.journal.model.JournalArticle fetchArticle(
801                    long groupId, java.lang.String articleId)
802                    throws com.liferay.portal.kernel.exception.SystemException;
803    
804            /**
805            * Returns the web content article matching the group, article ID, and
806            * version.
807            *
808            * @param groupId the primary key of the web content article's group
809            * @param articleId the primary key of the web content article
810            * @param version the web content article's version
811            * @return the web content article matching the group, article ID, and
812            version, or <code>null</code> if no web content article could be
813            found
814            */
815            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
816            public com.liferay.portlet.journal.model.JournalArticle fetchArticle(
817                    long groupId, java.lang.String articleId, double version)
818                    throws com.liferay.portal.kernel.exception.SystemException;
819    
820            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
821            public com.liferay.portlet.journal.model.JournalArticle fetchArticleByUrlTitle(
822                    long groupId, java.lang.String urlTitle)
823                    throws com.liferay.portal.kernel.exception.SystemException;
824    
825            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
826            public com.liferay.portlet.journal.model.JournalArticle fetchDisplayArticle(
827                    long groupId, java.lang.String articleId)
828                    throws com.liferay.portal.kernel.exception.SystemException;
829    
830            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
831            public com.liferay.portlet.journal.model.JournalArticle fetchLatestArticle(
832                    long resourcePrimKey)
833                    throws com.liferay.portal.kernel.exception.SystemException;
834    
835            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
836            public com.liferay.portlet.journal.model.JournalArticle fetchLatestArticle(
837                    long resourcePrimKey, int status)
838                    throws com.liferay.portal.kernel.exception.SystemException;
839    
840            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
841            public com.liferay.portlet.journal.model.JournalArticle fetchLatestArticle(
842                    long resourcePrimKey, int[] statuses)
843                    throws com.liferay.portal.kernel.exception.SystemException;
844    
845            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
846            public com.liferay.portlet.journal.model.JournalArticle fetchLatestArticle(
847                    long resourcePrimKey, int status, boolean preferApproved)
848                    throws com.liferay.portal.kernel.exception.SystemException;
849    
850            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
851            public com.liferay.portlet.journal.model.JournalArticle fetchLatestArticle(
852                    long groupId, java.lang.String articleId, int status)
853                    throws com.liferay.portal.kernel.exception.SystemException;
854    
855            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
856            public com.liferay.portlet.journal.model.JournalArticle fetchLatestArticleByUrlTitle(
857                    long groupId, java.lang.String urlTitle, int status)
858                    throws com.liferay.portal.kernel.exception.SystemException;
859    
860            /**
861            * Returns the latest indexable web content article matching the resource
862            * primary key.
863            *
864            * @param resourcePrimKey the primary key of the resource instance
865            * @return the latest indexable web content article matching the resource
866            primary key, or <code>null</code> if no matching web content
867            article could be found
868            */
869            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
870            public com.liferay.portlet.journal.model.JournalArticle fetchLatestIndexableArticle(
871                    long resourcePrimKey)
872                    throws com.liferay.portal.kernel.exception.SystemException;
873    
874            /**
875            * Returns the web content article with the ID.
876            *
877            * @param id the primary key of the web content article
878            * @return the web content article with the ID
879            * @throws PortalException if a matching web content article could not be
880            found
881            * @throws SystemException if a system exception occurred
882            */
883            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
884            public com.liferay.portlet.journal.model.JournalArticle getArticle(long id)
885                    throws com.liferay.portal.kernel.exception.PortalException,
886                            com.liferay.portal.kernel.exception.SystemException;
887    
888            /**
889            * Returns the latest approved web content article, or the latest unapproved
890            * article if none are approved. Both approved and unapproved articles must
891            * match the group and article ID.
892            *
893            * @param groupId the primary key of the web content article's group
894            * @param articleId the primary key of the web content article
895            * @return the matching web content article
896            * @throws PortalException if a matching web content article could not be
897            found
898            * @throws SystemException if a system exception occurred
899            */
900            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
901            public com.liferay.portlet.journal.model.JournalArticle getArticle(
902                    long groupId, java.lang.String articleId)
903                    throws com.liferay.portal.kernel.exception.PortalException,
904                            com.liferay.portal.kernel.exception.SystemException;
905    
906            /**
907            * Returns the web content article matching the group, article ID, and
908            * version.
909            *
910            * @param groupId the primary key of the web content article's group
911            * @param articleId the primary key of the web content article
912            * @param version the web content article's version
913            * @return the matching web content article
914            * @throws PortalException if a matching web content article could not be
915            found
916            * @throws SystemException if a system exception occurred
917            */
918            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
919            public com.liferay.portlet.journal.model.JournalArticle getArticle(
920                    long groupId, java.lang.String articleId, double version)
921                    throws com.liferay.portal.kernel.exception.PortalException,
922                            com.liferay.portal.kernel.exception.SystemException;
923    
924            /**
925            * Returns the web content article matching the group, class name, and class
926            * PK.
927            *
928            * @param groupId the primary key of the web content article's group
929            * @param className the DDMStructure class name if the web content article
930            is related to a DDM structure, the primary key of the class name
931            associated with the article, or {@link
932            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
933            * @param classPK the primary key of the DDM structure, if the the
934            DDMStructure class name is given as the <code>className</code>
935            parameter, the primary key of the class associated with the web
936            content article, or <code>0</code> otherwise
937            * @return the matching web content article
938            * @throws PortalException if a matching web content article could not be
939            found
940            * @throws SystemException if a system exception occurred
941            */
942            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
943            public com.liferay.portlet.journal.model.JournalArticle getArticle(
944                    long groupId, java.lang.String className, long classPK)
945                    throws com.liferay.portal.kernel.exception.PortalException,
946                            com.liferay.portal.kernel.exception.SystemException;
947    
948            /**
949            * Returns the latest web content article that is approved, or the latest
950            * unapproved article if none are approved. Both approved and unapproved
951            * articles must match the group and URL title.
952            *
953            * @param groupId the primary key of the web content article's group
954            * @param urlTitle the web content article's accessible URL title
955            * @return the matching web content article
956            * @throws PortalException if a portal exception occurred
957            * @throws SystemException if a system exception occurred
958            */
959            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
960            public com.liferay.portlet.journal.model.JournalArticle getArticleByUrlTitle(
961                    long groupId, java.lang.String urlTitle)
962                    throws com.liferay.portal.kernel.exception.PortalException,
963                            com.liferay.portal.kernel.exception.SystemException;
964    
965            /**
966            * Returns the web content associated with the web content article and DDM
967            * template.
968            *
969            * @param article the web content article
970            * @param ddmTemplateKey the primary key of the web content article's DDM
971            template (optionally <code>null</code>). If the article is
972            related to a DDM structure, the template's structure must match
973            it.
974            * @param viewMode the mode in which the web content is being viewed
975            * @param languageId the primary key of the language translation to get
976            * @param themeDisplay the theme display
977            * @return the web content associated with the DDM template
978            * @throws PortalException if a matching DDM template could not be found or
979            if a portal exception occurred
980            * @throws SystemException if a system exception occurred
981            */
982            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
983            public java.lang.String getArticleContent(
984                    com.liferay.portlet.journal.model.JournalArticle article,
985                    java.lang.String ddmTemplateKey, java.lang.String viewMode,
986                    java.lang.String languageId,
987                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
988                    throws com.liferay.portal.kernel.exception.PortalException,
989                            com.liferay.portal.kernel.exception.SystemException;
990    
991            /**
992            * Returns the web content matching the group, article ID, and version, and
993            * associated with the DDM template.
994            *
995            * @param groupId the primary key of the web content article's group
996            * @param articleId the primary key of the web content article
997            * @param version the web content article's version
998            * @param viewMode the mode in which the web content is being viewed
999            * @param ddmTemplateKey the primary key of the web content article's DDM
1000            template (optionally <code>null</code>). If the article is
1001            related to a DDM structure, the template's structure must match
1002            it.
1003            * @param languageId the primary key of the language translation to get
1004            * @param themeDisplay the theme display
1005            * @return the matching web content
1006            * @throws PortalException if a matching web content article or DDM template
1007            could not be found, or if a portal exception occurred
1008            * @throws SystemException if a system exception occurred
1009            */
1010            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1011            public java.lang.String getArticleContent(long groupId,
1012                    java.lang.String articleId, double version, java.lang.String viewMode,
1013                    java.lang.String ddmTemplateKey, java.lang.String languageId,
1014                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1015                    throws com.liferay.portal.kernel.exception.PortalException,
1016                            com.liferay.portal.kernel.exception.SystemException;
1017    
1018            /**
1019            * Returns the web content matching the group, article ID, and version.
1020            *
1021            * @param groupId the primary key of the web content article's group
1022            * @param articleId the primary key of the web content article
1023            * @param version the web content article's version
1024            * @param viewMode the mode in which the web content is being viewed
1025            * @param languageId the primary key of the language translation to get
1026            * @param themeDisplay the theme display
1027            * @return the matching web content
1028            * @throws PortalException if a matching web content article or DDM template
1029            could not be found, or if a portal exception occurred
1030            * @throws SystemException if a system exception occurred
1031            */
1032            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1033            public java.lang.String getArticleContent(long groupId,
1034                    java.lang.String articleId, double version, java.lang.String viewMode,
1035                    java.lang.String languageId,
1036                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1037                    throws com.liferay.portal.kernel.exception.PortalException,
1038                            com.liferay.portal.kernel.exception.SystemException;
1039    
1040            /**
1041            * Returns the latest web content matching the group and article ID, and
1042            * associated with DDM template key.
1043            *
1044            * @param groupId the primary key of the web content article's group
1045            * @param articleId the primary key of the web content article
1046            * @param viewMode the mode in which the web content is being viewed
1047            * @param ddmTemplateKey the primary key of the web content article's DDM
1048            template (optionally <code>null</code>). If the article is
1049            related to a DDM structure, the template's structure must match
1050            it.
1051            * @param languageId the primary key of the language translation to get
1052            * @param themeDisplay the theme display
1053            * @return the matching web content
1054            * @throws PortalException if a matching web content article or DDM template
1055            could not be found, or if a portal exception occurred
1056            * @throws SystemException if a system exception occurred
1057            */
1058            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1059            public java.lang.String getArticleContent(long groupId,
1060                    java.lang.String articleId, java.lang.String viewMode,
1061                    java.lang.String ddmTemplateKey, java.lang.String languageId,
1062                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1063                    throws com.liferay.portal.kernel.exception.PortalException,
1064                            com.liferay.portal.kernel.exception.SystemException;
1065    
1066            /**
1067            * Returns the latest web content matching the group and article ID.
1068            *
1069            * @param groupId the primary key of the web content article's group
1070            * @param articleId the primary key of the web content article
1071            * @param viewMode the mode in which the web content is being viewed
1072            * @param languageId the primary key of the language translation to get
1073            * @param themeDisplay the theme display
1074            * @return the matching web content
1075            * @throws PortalException if a matching web content article or DDM template
1076            could not be found, or if a portal exception occurred
1077            * @throws SystemException if a system exception occurred
1078            */
1079            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1080            public java.lang.String getArticleContent(long groupId,
1081                    java.lang.String articleId, java.lang.String viewMode,
1082                    java.lang.String languageId,
1083                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1084                    throws com.liferay.portal.kernel.exception.PortalException,
1085                            com.liferay.portal.kernel.exception.SystemException;
1086    
1087            /**
1088            * Returns a web content article display for the specified page of the
1089            * latest version of the web content article, optionally based on the DDM
1090            * template if the article is template driven. If the article is template
1091            * driven, web content transformation tokens are added from the theme
1092            * display (if not <code>null</code>) or the XML request otherwise.
1093            *
1094            * @param article the web content article
1095            * @param ddmTemplateKey the primary key of the web content article's DDM
1096            template (optionally <code>null</code>). If the article is
1097            related to a DDM structure, the template's structure must match
1098            it.
1099            * @param viewMode the mode in which the web content is being viewed
1100            * @param languageId the primary key of the language translation to get
1101            * @param page the web content's page number. Page numbers start at
1102            <code>1</code>.
1103            * @param xmlRequest the request that serializes the web content into a
1104            hierarchical hash map (optionally <code>null</code>)
1105            * @param themeDisplay the theme display
1106            * @return the web content article display
1107            * @throws PortalException if a matching DDM template could not be found or
1108            if a portal exception occurred
1109            * @throws SystemException if a system exception occurred
1110            */
1111            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1112            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1113                    com.liferay.portlet.journal.model.JournalArticle article,
1114                    java.lang.String ddmTemplateKey, java.lang.String viewMode,
1115                    java.lang.String languageId, int page, java.lang.String xmlRequest,
1116                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1117                    throws com.liferay.portal.kernel.exception.PortalException,
1118                            com.liferay.portal.kernel.exception.SystemException;
1119    
1120            /**
1121            * Returns a web content article display for the first page of the specified
1122            * version of the web content article, optionally based on the DDM template
1123            * if the article is template driven. If the article is template driven, web
1124            * content transformation tokens are added from the theme display (if not
1125            * <code>null</code>) or the XML request otherwise.
1126            *
1127            * @param groupId the primary key of the web content article's group
1128            * @param articleId the primary key of the web content article
1129            * @param version the web content article's version
1130            * @param ddmTemplateKey the primary key of the web content article's DDM
1131            template (optionally <code>null</code>). If the article is
1132            related to a DDM structure, the template's structure must match
1133            it.
1134            * @param viewMode the mode in which the web content is being viewed
1135            * @param languageId the primary key of the language translation to get
1136            * @param page the web content's page number
1137            * @param xmlRequest the request that serializes the web content into a
1138            hierarchical hash map
1139            * @param themeDisplay the theme display
1140            * @return the web content article display, or <code>null</code> if the
1141            article has expired or if article's display date/time is after
1142            the current date/time
1143            * @throws PortalException if a matching web content article or DDM template
1144            could not be found, or if a portal exception occurred
1145            * @throws SystemException if a system exception occurred
1146            */
1147            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1148            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1149                    long groupId, java.lang.String articleId, double version,
1150                    java.lang.String ddmTemplateKey, java.lang.String viewMode,
1151                    java.lang.String languageId, int page, java.lang.String xmlRequest,
1152                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1153                    throws com.liferay.portal.kernel.exception.PortalException,
1154                            com.liferay.portal.kernel.exception.SystemException;
1155    
1156            /**
1157            * Returns a web content article display for the first page of the specified
1158            * version of the web content article matching the group and article ID,
1159            * optionally based on the DDM template if the article is template driven.
1160            * If the article is template driven, web content transformation tokens are
1161            * added from the theme display (if not <code>null</code>).
1162            *
1163            * @param groupId the primary key of the web content article's group
1164            * @param articleId the primary key of the web content article
1165            * @param version the web content article's version
1166            * @param ddmTemplateKey the primary key of the web content article's DDM
1167            template (optionally <code>null</code>). If the article is
1168            related to a DDM structure, the template's structure must match
1169            it.
1170            * @param viewMode the mode in which the web content is being viewed
1171            * @param languageId the primary key of the language translation to get
1172            * @param themeDisplay the theme display
1173            * @return the web content article display, or <code>null</code> if the
1174            article has expired or if article's display date/time is after
1175            the current date/time
1176            * @throws PortalException if a matching web content article or DDM template
1177            could not be found, or if a portal exception occurred
1178            * @throws SystemException if a system exception occurred
1179            */
1180            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1181            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1182                    long groupId, java.lang.String articleId, double version,
1183                    java.lang.String ddmTemplateKey, java.lang.String viewMode,
1184                    java.lang.String languageId,
1185                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1186                    throws com.liferay.portal.kernel.exception.PortalException,
1187                            com.liferay.portal.kernel.exception.SystemException;
1188    
1189            /**
1190            * Returns a web content article display for the first page of the latest
1191            * version of the web content article matching the group and article ID. If
1192            * the article is template driven, web content transformation tokens are
1193            * added from the theme display (if not <code>null</code>) or the XML
1194            * request otherwise.
1195            *
1196            * @param groupId the primary key of the web content article's group
1197            * @param articleId the primary key of the web content article
1198            * @param viewMode the mode in which the web content is being viewed
1199            * @param languageId the primary key of the language translation to get
1200            * @param page the web content's page number
1201            * @param xmlRequest the request that serializes the web content into a
1202            hierarchical hash map
1203            * @param themeDisplay the theme display
1204            * @return the web content article display, or <code>null</code> if the
1205            article has expired or if article's display date/time is after
1206            the current date/time
1207            * @throws PortalException if a matching web content article or DDM template
1208            could not be found, or if a portal exception occurred
1209            * @throws SystemException if a system exception occurred
1210            */
1211            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1212            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1213                    long groupId, java.lang.String articleId, java.lang.String viewMode,
1214                    java.lang.String languageId, int page, java.lang.String xmlRequest,
1215                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1216                    throws com.liferay.portal.kernel.exception.PortalException,
1217                            com.liferay.portal.kernel.exception.SystemException;
1218    
1219            /**
1220            * Returns a web content article display for the specified page of the
1221            * latest version of the web content article matching the group and article
1222            * ID, optionally based on the DDM template if the article is template
1223            * driven. If the article is template driven, web content transformation
1224            * tokens are added from the theme display (if not <code>null</code>) or the
1225            * XML request otherwise.
1226            *
1227            * @param groupId the primary key of the web content article's group
1228            * @param articleId the primary key of the web content article
1229            * @param ddmTemplateKey the primary key of the web content article's DDM
1230            template (optionally <code>null</code>). If the article is
1231            related to a DDM structure, the template's structure must match
1232            it.
1233            * @param viewMode the mode in which the web content is being viewed
1234            * @param languageId the primary key of the language translation to get
1235            * @param page the web content's page number
1236            * @param xmlRequest the request that serializes the web content into a
1237            hierarchical hash map
1238            * @param themeDisplay the theme display
1239            * @return the web content article display, or <code>null</code> if the
1240            article has expired or if article's display date/time is after
1241            the current date/time
1242            * @throws PortalException if a matching web content article or DDM template
1243            could not be found, or if a portal exception occurred
1244            * @throws SystemException if a system exception occurred
1245            */
1246            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1247            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1248                    long groupId, java.lang.String articleId,
1249                    java.lang.String ddmTemplateKey, java.lang.String viewMode,
1250                    java.lang.String languageId, int page, java.lang.String xmlRequest,
1251                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1252                    throws com.liferay.portal.kernel.exception.PortalException,
1253                            com.liferay.portal.kernel.exception.SystemException;
1254    
1255            /**
1256            * Returns a web content article display for the first page of the latest
1257            * version of the web content article matching the group and article ID,
1258            * optionally based on the DDM template if the article is template driven.
1259            * If the article is template driven, web content transformation tokens are
1260            * added from the theme display (if not <code>null</code>).
1261            *
1262            * @param groupId the primary key of the web content article's group
1263            * @param articleId the primary key of the web content article
1264            * @param ddmTemplateKey the primary key of the web content article's DDM
1265            template (optionally <code>null</code>). If the article is
1266            related to a DDM structure, the template's structure must match
1267            it.
1268            * @param viewMode the mode in which the web content is being viewed
1269            * @param languageId the primary key of the language translation to get
1270            * @param themeDisplay the theme display
1271            * @return the web content article display, or <code>null</code> if the
1272            article has expired or if article's display date/time is after
1273            the current date/time
1274            * @throws PortalException if a matching web content article or DDM template
1275            could not be found, or if a portal exception occurred
1276            * @throws SystemException if a system exception occurred
1277            */
1278            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1279            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1280                    long groupId, java.lang.String articleId,
1281                    java.lang.String ddmTemplateKey, java.lang.String viewMode,
1282                    java.lang.String languageId,
1283                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1284                    throws com.liferay.portal.kernel.exception.PortalException,
1285                            com.liferay.portal.kernel.exception.SystemException;
1286    
1287            /**
1288            * Returns a web content article display for the first page of the latest
1289            * version of the web content article matching the group and article ID. If
1290            * the article is template driven, web content transformation tokens are
1291            * added from the theme display (if not <code>null</code>).
1292            *
1293            * @param groupId the primary key of the web content article's group
1294            * @param articleId the primary key of the web content article
1295            * @param viewMode the mode in which the web content is being viewed
1296            * @param languageId the primary key of the language translation to get
1297            * @param themeDisplay the theme display
1298            * @return the web content article display, or <code>null</code> if the
1299            article has expired or if article's display date/time is after
1300            the current date/time
1301            * @throws PortalException if a matching web content article or DDM template
1302            could not be found, or if a portal exception occurred
1303            * @throws SystemException if a system exception occurred
1304            */
1305            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1306            public com.liferay.portlet.journal.model.JournalArticleDisplay getArticleDisplay(
1307                    long groupId, java.lang.String articleId, java.lang.String viewMode,
1308                    java.lang.String languageId,
1309                    com.liferay.portal.theme.ThemeDisplay themeDisplay)
1310                    throws com.liferay.portal.kernel.exception.PortalException,
1311                            com.liferay.portal.kernel.exception.SystemException;
1312    
1313            /**
1314            * Returns all the web content articles present in the system.
1315            *
1316            * @return the web content articles present in the system
1317            * @throws SystemException if a system exception occurred
1318            */
1319            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1320            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles()
1321                    throws com.liferay.portal.kernel.exception.SystemException;
1322    
1323            /**
1324            * Returns all the web content articles belonging to the group.
1325            *
1326            * @param groupId the primary key of the web content article's group
1327            * @return the web content articles belonging to the group
1328            * @throws SystemException if a system exception occurred
1329            */
1330            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1331            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1332                    long groupId)
1333                    throws com.liferay.portal.kernel.exception.SystemException;
1334    
1335            /**
1336            * Returns a range of all the web content articles belonging to the group.
1337            *
1338            * <p>
1339            * Useful when paginating results. Returns a maximum of <code>end -
1340            * start</code> instances. <code>start</code> and <code>end</code> are not
1341            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1342            * refers to the first result in the set. Setting both <code>start</code>
1343            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1344            * result set.
1345            * </p>
1346            *
1347            * @param groupId the primary key of the web content article's group
1348            * @param start the lower bound of the range of web content articles to
1349            return
1350            * @param end the upper bound of the range of web content articles to
1351            return (not inclusive)
1352            * @return the range of matching web content articles
1353            * @throws SystemException if a system exception occurred
1354            */
1355            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1356            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1357                    long groupId, int start, int end)
1358                    throws com.liferay.portal.kernel.exception.SystemException;
1359    
1360            /**
1361            * Returns an ordered range of all the web content articles belonging to the
1362            * group.
1363            *
1364            * <p>
1365            * Useful when paginating results. Returns a maximum of <code>end -
1366            * start</code> instances. <code>start</code> and <code>end</code> are not
1367            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1368            * refers to the first result in the set. Setting both <code>start</code>
1369            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1370            * result set.
1371            * </p>
1372            *
1373            * @param groupId the primary key of the web content article's group
1374            * @param start the lower bound of the range of web content articles to
1375            return
1376            * @param end the upper bound of the range of web content articles to
1377            return (not inclusive)
1378            * @param obc the comparator to order the web content articles
1379            * @return the range of matching web content articles ordered by the
1380            comparator
1381            * @throws SystemException if a system exception occurred
1382            */
1383            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1384            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1385                    long groupId, int start, int end,
1386                    com.liferay.portal.kernel.util.OrderByComparator obc)
1387                    throws com.liferay.portal.kernel.exception.SystemException;
1388    
1389            /**
1390            * Returns all the web content articles matching the group and folder.
1391            *
1392            * @param groupId the primary key of the web content article's group
1393            * @param folderId the primary key of the web content article folder
1394            * @return the matching web content articles
1395            * @throws SystemException if a system exception occurred
1396            */
1397            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1398            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1399                    long groupId, long folderId)
1400                    throws com.liferay.portal.kernel.exception.SystemException;
1401    
1402            /**
1403            * Returns a range of all the web content articles matching the group and
1404            * folder.
1405            *
1406            * <p>
1407            * Useful when paginating results. Returns a maximum of <code>end -
1408            * start</code> instances. <code>start</code> and <code>end</code> are not
1409            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1410            * refers to the first result in the set. Setting both <code>start</code>
1411            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1412            * result set.
1413            * </p>
1414            *
1415            * @param groupId the primary key of the web content article's group
1416            * @param folderId the primary key of the web content article's folder
1417            * @param start the lower bound of the range of web content articles to
1418            return
1419            * @param end the upper bound of the range of web content articles to
1420            return (not inclusive)
1421            * @return the range of matching web content articles
1422            * @throws SystemException if a system exception occurred
1423            */
1424            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1425            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1426                    long groupId, long folderId, int start, int end)
1427                    throws com.liferay.portal.kernel.exception.SystemException;
1428    
1429            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1430            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1431                    long groupId, long folderId, int status, int start, int end)
1432                    throws com.liferay.portal.kernel.exception.SystemException;
1433    
1434            /**
1435            * Returns an ordered range of all the web content articles matching the
1436            * group and folder.
1437            *
1438            * <p>
1439            * Useful when paginating results. Returns a maximum of <code>end -
1440            * start</code> instances. <code>start</code> and <code>end</code> are not
1441            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1442            * refers to the first result in the set. Setting both <code>start</code>
1443            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1444            * result set.
1445            * </p>
1446            *
1447            * @param groupId the primary key of the web content article's group
1448            * @param folderId the primary key of the web content article's folder
1449            * @param start the lower bound of the range of web content articles to
1450            return
1451            * @param end the upper bound of the range of web content articles to
1452            return (not inclusive)
1453            * @param orderByComparator the comparator to order the web content
1454            articles
1455            * @return the range of matching web content articles ordered by the
1456            comparator
1457            * @throws SystemException if a system exception occurred
1458            */
1459            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1460            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1461                    long groupId, long folderId, int start, int end,
1462                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
1463                    throws com.liferay.portal.kernel.exception.SystemException;
1464    
1465            /**
1466            * Returns all the web content articles matching the group and article ID.
1467            *
1468            * @param groupId the primary key of the web content article's group
1469            * @param articleId the primary key of the web content article
1470            * @return the matching web content articles
1471            * @throws SystemException if a system exception occurred
1472            */
1473            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1474            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1475                    long groupId, java.lang.String articleId)
1476                    throws com.liferay.portal.kernel.exception.SystemException;
1477    
1478            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1479            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticles(
1480                    long groupId, java.lang.String articleId, int start, int end,
1481                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
1482                    throws com.liferay.portal.kernel.exception.SystemException;
1483    
1484            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1485            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesByResourcePrimKey(
1486                    long resourcePrimKey)
1487                    throws com.liferay.portal.kernel.exception.SystemException;
1488    
1489            /**
1490            * Returns all the web content articles matching the small image ID.
1491            *
1492            * @param smallImageId the primary key of the web content article's small
1493            image
1494            * @return the web content articles matching the small image ID
1495            * @throws SystemException if a system exception occurred
1496            */
1497            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1498            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getArticlesBySmallImageId(
1499                    long smallImageId)
1500                    throws com.liferay.portal.kernel.exception.SystemException;
1501    
1502            /**
1503            * Returns the number of web content articles belonging to the group.
1504            *
1505            * @param groupId the primary key of the web content article's group
1506            * @return the number of web content articles belonging to the group
1507            * @throws SystemException if a system exception occurred
1508            */
1509            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1510            public int getArticlesCount(long groupId)
1511                    throws com.liferay.portal.kernel.exception.SystemException;
1512    
1513            /**
1514            * Returns the number of web content articles matching the group and folder.
1515            *
1516            * @param groupId the primary key of the web content article's group
1517            * @param folderId the primary key of the web content article's folder
1518            * @return the number of matching web content articles
1519            * @throws SystemException if a system exception occurred
1520            */
1521            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1522            public int getArticlesCount(long groupId, long folderId)
1523                    throws com.liferay.portal.kernel.exception.SystemException;
1524    
1525            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1526            public int getArticlesCount(long groupId, long folderId, int status)
1527                    throws com.liferay.portal.kernel.exception.SystemException;
1528    
1529            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1530            public int getArticlesCount(long groupId, java.lang.String articleId)
1531                    throws com.liferay.portal.kernel.exception.SystemException;
1532    
1533            /**
1534            * Returns an ordered range of all the web content articles matching the
1535            * company, version, and workflow status.
1536            *
1537            * <p>
1538            * Useful when paginating results. Returns a maximum of <code>end -
1539            * start</code> instances. <code>start</code> and <code>end</code> are not
1540            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1541            * refers to the first result in the set. Setting both <code>start</code>
1542            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1543            * result set.
1544            * </p>
1545            *
1546            * @param companyId the primary key of the web content article's company
1547            * @param version the web content article's version
1548            * @param status the web content article's workflow status. For more
1549            information see {@link WorkflowConstants} for constants starting
1550            with the "STATUS_" prefix.
1551            * @param start the lower bound of the range of web content articles to
1552            return
1553            * @param end the upper bound of the range of web content articles to
1554            return (not inclusive)
1555            * @return the range of matching web content articles ordered by article ID
1556            * @throws SystemException if a system exception occurred
1557            */
1558            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1559            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getCompanyArticles(
1560                    long companyId, double version, int status, int start, int end)
1561                    throws com.liferay.portal.kernel.exception.SystemException;
1562    
1563            /**
1564            * Returns an ordered range of all the web content articles matching the
1565            * company and workflow status.
1566            *
1567            * <p>
1568            * Useful when paginating results. Returns a maximum of <code>end -
1569            * start</code> instances. <code>start</code> and <code>end</code> are not
1570            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1571            * refers to the first result in the set. Setting both <code>start</code>
1572            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1573            * result set.
1574            * </p>
1575            *
1576            * @param companyId the primary key of the web content article's company
1577            * @param status the web content article's workflow status. For more
1578            information see {@link WorkflowConstants} for constants starting
1579            with the "STATUS_" prefix.
1580            * @param start the lower bound of the range of web content articles to
1581            return
1582            * @param end the upper bound of the range of web content articles to
1583            return (not inclusive)
1584            * @return the range of matching web content articles ordered by article ID
1585            * @throws SystemException if a system exception occurred
1586            */
1587            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1588            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getCompanyArticles(
1589                    long companyId, int status, int start, int end)
1590                    throws com.liferay.portal.kernel.exception.SystemException;
1591    
1592            /**
1593            * Returns the number of web content articles matching the company, version,
1594            * and workflow status.
1595            *
1596            * <p>
1597            * Useful when paginating results. Returns a maximum of <code>end -
1598            * start</code> instances. <code>start</code> and <code>end</code> are not
1599            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1600            * refers to the first result in the set. Setting both <code>start</code>
1601            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1602            * result set.
1603            * </p>
1604            *
1605            * @param companyId the primary key of the web content article's company
1606            * @param version the web content article's version
1607            * @param status the web content article's workflow status. For more
1608            information see {@link WorkflowConstants} for constants starting
1609            with the "STATUS_" prefix.
1610            * @param start the lower bound of the range of web content articles to
1611            return
1612            * @param end the upper bound of the range of web content articles to
1613            return (not inclusive)
1614            * @return the number of matching web content articles
1615            * @throws SystemException if a system exception occurred
1616            */
1617            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1618            public int getCompanyArticlesCount(long companyId, double version,
1619                    int status, int start, int end)
1620                    throws com.liferay.portal.kernel.exception.SystemException;
1621    
1622            /**
1623            * Returns the number of web content articles matching the company and
1624            * workflow status.
1625            *
1626            * @param companyId the primary key of the web content article's company
1627            * @param status the web content article's workflow status. For more
1628            information see {@link WorkflowConstants} for constants starting
1629            with the "STATUS_" prefix.
1630            * @return the number of matching web content articles
1631            * @throws SystemException if a system exception occurred
1632            */
1633            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1634            public int getCompanyArticlesCount(long companyId, int status)
1635                    throws com.liferay.portal.kernel.exception.SystemException;
1636    
1637            /**
1638            * Returns the matching web content article currently displayed or next to
1639            * be displayed if no article is currently displayed.
1640            *
1641            * @param groupId the primary key of the web content article's group
1642            * @param articleId the primary key of the web content article
1643            * @return the matching web content article currently displayed, or the next
1644            one to be displayed if no version of the article is currently
1645            displayed
1646            * @throws PortalException if no approved matching web content articles
1647            could be found
1648            * @throws SystemException if a system exception occurred
1649            */
1650            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1651            public com.liferay.portlet.journal.model.JournalArticle getDisplayArticle(
1652                    long groupId, java.lang.String articleId)
1653                    throws com.liferay.portal.kernel.exception.PortalException,
1654                            com.liferay.portal.kernel.exception.SystemException;
1655    
1656            /**
1657            * Returns the web content article matching the URL title that is currently
1658            * displayed or next to be displayed if no article is currently displayed.
1659            *
1660            * @param groupId the primary key of the web content article's group
1661            * @param urlTitle the web content article's accessible URL title
1662            * @return the web content article matching the URL title that is currently
1663            displayed, or next one to be displayed if no version of the
1664            article is currently displayed
1665            * @throws PortalException if no approved matching web content articles
1666            could be found
1667            * @throws SystemException if a system exception occurred
1668            */
1669            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1670            public com.liferay.portlet.journal.model.JournalArticle getDisplayArticleByUrlTitle(
1671                    long groupId, java.lang.String urlTitle)
1672                    throws com.liferay.portal.kernel.exception.PortalException,
1673                            com.liferay.portal.kernel.exception.SystemException;
1674    
1675            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1676            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getIndexableArticlesByDDMStructureKey(
1677                    java.lang.String[] ddmStructureKeys)
1678                    throws com.liferay.portal.kernel.exception.SystemException;
1679    
1680            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1681            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getIndexableArticlesByResourcePrimKey(
1682                    long resourcePrimKey)
1683                    throws com.liferay.portal.kernel.exception.SystemException;
1684    
1685            /**
1686            * Returns the latest web content article matching the resource primary key,
1687            * preferring articles with approved workflow status.
1688            *
1689            * @param resourcePrimKey the primary key of the resource instance
1690            * @return the latest web content article matching the resource primary key,
1691            preferring articles with approved workflow status
1692            * @throws PortalException if a matching web content article could not be
1693            found
1694            * @throws SystemException if a system exception occurred
1695            */
1696            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1697            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
1698                    long resourcePrimKey)
1699                    throws com.liferay.portal.kernel.exception.PortalException,
1700                            com.liferay.portal.kernel.exception.SystemException;
1701    
1702            /**
1703            * Returns the latest web content article matching the resource primary key
1704            * and workflow status, preferring articles with approved workflow status.
1705            *
1706            * @param resourcePrimKey the primary key of the resource instance
1707            * @param status the web content article's workflow status. For more
1708            information see {@link WorkflowConstants} for constants starting
1709            with the "STATUS_" prefix.
1710            * @return the latest web content article matching the resource primary key
1711            and workflow status, preferring articles with approved workflow
1712            status
1713            * @throws PortalException if a matching web content article could not be
1714            found
1715            * @throws SystemException if a system exception occurred
1716            */
1717            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1718            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
1719                    long resourcePrimKey, int status)
1720                    throws com.liferay.portal.kernel.exception.PortalException,
1721                            com.liferay.portal.kernel.exception.SystemException;
1722    
1723            /**
1724            * Returns the latest web content article matching the resource primary key
1725            * and workflow status, optionally preferring articles with approved
1726            * workflow status.
1727            *
1728            * @param resourcePrimKey the primary key of the resource instance
1729            * @param status the web content article's workflow status. For more
1730            information see {@link WorkflowConstants} for constants starting
1731            with the "STATUS_" prefix.
1732            * @param preferApproved whether to prefer returning the latest matching
1733            article that has workflow status {@link
1734            WorkflowConstants#STATUS_APPROVED} over returning one that has a
1735            different status
1736            * @return the latest web content article matching the resource primary key
1737            and workflow status, optionally preferring articles with approved
1738            workflow status
1739            * @throws PortalException if a matching web content article could not be
1740            found
1741            * @throws SystemException if a system exception occurred
1742            */
1743            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1744            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
1745                    long resourcePrimKey, int status, boolean preferApproved)
1746                    throws com.liferay.portal.kernel.exception.PortalException,
1747                            com.liferay.portal.kernel.exception.SystemException;
1748    
1749            /**
1750            * Returns the latest web content article with the group and article ID.
1751            *
1752            * @param groupId the primary key of the web content article's group
1753            * @param articleId the primary key of the web content article
1754            * @return the latest matching web content article
1755            * @throws PortalException if a matching web content article could not be
1756            found
1757            * @throws SystemException if a system exception occurred
1758            */
1759            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1760            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
1761                    long groupId, java.lang.String articleId)
1762                    throws com.liferay.portal.kernel.exception.PortalException,
1763                            com.liferay.portal.kernel.exception.SystemException;
1764    
1765            /**
1766            * Returns the latest web content article matching the group, article ID,
1767            * and workflow status.
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 status the web content article's workflow status. For more
1772            information see {@link WorkflowConstants} for constants starting
1773            with the "STATUS_" prefix.
1774            * @return the latest matching web content article
1775            * @throws PortalException if a matching web content article could not be
1776            found
1777            * @throws SystemException if a system exception occurred
1778            */
1779            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1780            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
1781                    long groupId, java.lang.String articleId, int status)
1782                    throws com.liferay.portal.kernel.exception.PortalException,
1783                            com.liferay.portal.kernel.exception.SystemException;
1784    
1785            /**
1786            * Returns the latest web content article matching the group, class name ID,
1787            * and class PK.
1788            *
1789            * @param groupId the primary key of the web content article's group
1790            * @param className the DDMStructure class name if the web content article
1791            is related to a DDM structure, the class name associated with the
1792            article, or {@link JournalArticleConstants#CLASSNAME_ID_DEFAULT}
1793            otherwise
1794            * @param classPK the primary key of the DDM structure, if the DDMStructure
1795            class name is given as the <code>className</code> parameter, the
1796            primary key of the class associated with the web content article,
1797            or <code>0</code> otherwise
1798            * @return the latest matching web content article
1799            * @throws PortalException if a matching web content article could not be
1800            found
1801            * @throws SystemException if a system exception occurred
1802            */
1803            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1804            public com.liferay.portlet.journal.model.JournalArticle getLatestArticle(
1805                    long groupId, java.lang.String className, long classPK)
1806                    throws com.liferay.portal.kernel.exception.PortalException,
1807                            com.liferay.portal.kernel.exception.SystemException;
1808    
1809            /**
1810            * Returns the latest web content article matching the group, URL title, and
1811            * workflow status.
1812            *
1813            * @param groupId the primary key of the web content article's group
1814            * @param urlTitle the web content article's accessible URL title
1815            * @param status the web content article's workflow status. For more
1816            information see {@link WorkflowConstants} for constants starting
1817            with the "STATUS_" prefix.
1818            * @return the latest matching web content article
1819            * @throws PortalException if a matching web content article could not be
1820            found
1821            * @throws SystemException if a system exception occurred
1822            */
1823            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1824            public com.liferay.portlet.journal.model.JournalArticle getLatestArticleByUrlTitle(
1825                    long groupId, java.lang.String urlTitle, int status)
1826                    throws com.liferay.portal.kernel.exception.PortalException,
1827                            com.liferay.portal.kernel.exception.SystemException;
1828    
1829            /**
1830            * Returns the latest version number of the web content with the group and
1831            * article ID.
1832            *
1833            * @param groupId the primary key of the web content article's group
1834            * @param articleId the primary key of the web content article
1835            * @return the latest version number of the matching web content
1836            * @throws PortalException if a matching web content article could not be
1837            found
1838            * @throws SystemException if a system exception occurred
1839            */
1840            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1841            public double getLatestVersion(long groupId, java.lang.String articleId)
1842                    throws com.liferay.portal.kernel.exception.PortalException,
1843                            com.liferay.portal.kernel.exception.SystemException;
1844    
1845            /**
1846            * Returns the latest version number of the web content with the group,
1847            * article ID, and workflow status.
1848            *
1849            * @param groupId the primary key of the web content article's group
1850            * @param articleId the primary key of the web content article
1851            * @param status the web content article's workflow status. For more
1852            information see {@link WorkflowConstants} for constants starting
1853            with the "STATUS_" prefix.
1854            * @return the latest version number of the matching web content
1855            * @throws PortalException if a matching web content article could not be
1856            found
1857            * @throws SystemException if a system exception occurred
1858            */
1859            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1860            public double getLatestVersion(long groupId, java.lang.String articleId,
1861                    int status)
1862                    throws com.liferay.portal.kernel.exception.PortalException,
1863                            com.liferay.portal.kernel.exception.SystemException;
1864    
1865            /**
1866            * Returns the number of web content articles that are not recycled.
1867            *
1868            * @param groupId the primary key of the web content article's group
1869            * @param folderId the primary key of the web content article folder
1870            * @return the number of web content articles that are not recycled
1871            * @throws SystemException if a system exception occurred
1872            */
1873            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1874            public int getNotInTrashArticlesCount(long groupId, long folderId)
1875                    throws com.liferay.portal.kernel.exception.SystemException;
1876    
1877            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1878            public com.liferay.portlet.journal.model.JournalArticle getOldestArticle(
1879                    long groupId, java.lang.String articleId)
1880                    throws com.liferay.portal.kernel.exception.PortalException,
1881                            com.liferay.portal.kernel.exception.SystemException;
1882    
1883            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1884            public com.liferay.portlet.journal.model.JournalArticle getOldestArticle(
1885                    long groupId, java.lang.String articleId, int status)
1886                    throws com.liferay.portal.kernel.exception.PortalException,
1887                            com.liferay.portal.kernel.exception.SystemException;
1888    
1889            /**
1890            * Returns the web content articles matching the group and DDM structure
1891            * key.
1892            *
1893            * @param groupId the primary key of the web content article's group
1894            * @param ddmStructureKey the primary key of the web content article's DDM
1895            structure
1896            * @return the matching web content articles
1897            * @throws SystemException if a system exception occurred
1898            */
1899            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1900            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getStructureArticles(
1901                    long groupId, java.lang.String ddmStructureKey)
1902                    throws com.liferay.portal.kernel.exception.SystemException;
1903    
1904            /**
1905            * Returns an ordered range of all the web content articles matching the
1906            * group and DDM structure key.
1907            *
1908            * <p>
1909            * Useful when paginating results. Returns a maximum of <code>end -
1910            * start</code> instances. <code>start</code> and <code>end</code> are not
1911            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1912            * refers to the first result in the set. Setting both <code>start</code>
1913            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1914            * result set.
1915            * </p>
1916            *
1917            * @param groupId the primary key of the web content article's group
1918            * @param ddmStructureKey the primary key of the web content article's DDM
1919            structure
1920            * @param start the lower bound of the range of web content articles to
1921            return
1922            * @param end the upper bound of the range of web content articles to
1923            return (not inclusive)
1924            * @param obc the comparator to order the web content articles
1925            * @return the range of matching web content articles ordered by the
1926            comparator
1927            * @throws SystemException if a system exception occurred
1928            */
1929            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1930            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getStructureArticles(
1931                    long groupId, java.lang.String ddmStructureKey, int start, int end,
1932                    com.liferay.portal.kernel.util.OrderByComparator obc)
1933                    throws com.liferay.portal.kernel.exception.SystemException;
1934    
1935            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1936            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getStructureArticles(
1937                    java.lang.String[] ddmStructureKeys)
1938                    throws com.liferay.portal.kernel.exception.SystemException;
1939    
1940            /**
1941            * Returns the number of web content articles matching the group and DDM
1942            * structure key.
1943            *
1944            * @param groupId the primary key of the web content article's group
1945            * @param ddmStructureKey the primary key of the web content article's DDM
1946            structure
1947            * @return the number of matching web content articles
1948            * @throws SystemException if a system exception occurred
1949            */
1950            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1951            public int getStructureArticlesCount(long groupId,
1952                    java.lang.String ddmStructureKey)
1953                    throws com.liferay.portal.kernel.exception.SystemException;
1954    
1955            /**
1956            * Returns the web content articles matching the group and DDM template key.
1957            *
1958            * @param groupId the primary key of the web content article's group
1959            * @param ddmTemplateKey the primary key of the web content article's DDM
1960            template (optionally <code>null</code>). If the article is
1961            related to a DDM structure, the template's structure must match
1962            it.
1963            * @return the matching web content articles
1964            * @throws SystemException if a system exception occurred
1965            */
1966            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1967            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getTemplateArticles(
1968                    long groupId, java.lang.String ddmTemplateKey)
1969                    throws com.liferay.portal.kernel.exception.SystemException;
1970    
1971            /**
1972            * Returns an ordered range of all the web content articles matching the
1973            * group and DDM template key.
1974            *
1975            * <p>
1976            * Useful when paginating results. Returns a maximum of <code>end -
1977            * start</code> instances. <code>start</code> and <code>end</code> are not
1978            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1979            * refers to the first result in the set. Setting both <code>start</code>
1980            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
1981            * result set.
1982            * </p>
1983            *
1984            * @param groupId the primary key of the web content article's group
1985            * @param ddmTemplateKey the primary key of the web content article's DDM
1986            template (optionally <code>null</code>). If the article is
1987            related to a DDM structure, the template's structure must match
1988            it.
1989            * @param start the lower bound of the range of web content articles to
1990            return
1991            * @param end the upper bound of the range of web content articles to
1992            return (not inclusive)
1993            * @param obc the comparator to order the web content articles
1994            * @return the range of matching web content articles ordered by the
1995            comparator
1996            * @throws SystemException if a system exception occurred
1997            */
1998            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1999            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> getTemplateArticles(
2000                    long groupId, java.lang.String ddmTemplateKey, int start, int end,
2001                    com.liferay.portal.kernel.util.OrderByComparator obc)
2002                    throws com.liferay.portal.kernel.exception.SystemException;
2003    
2004            /**
2005            * Returns the number of web content articles matching the group and DDM
2006            * template key.
2007            *
2008            * @param groupId the primary key of the web content article's group
2009            * @param ddmTemplateKey the primary key of the web content article's DDM
2010            template (optionally <code>null</code>). If the article is
2011            related to a DDM structure, the template's structure must match
2012            it.
2013            * @return the number of matching web content articles
2014            * @throws SystemException if a system exception occurred
2015            */
2016            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2017            public int getTemplateArticlesCount(long groupId,
2018                    java.lang.String ddmTemplateKey)
2019                    throws com.liferay.portal.kernel.exception.SystemException;
2020    
2021            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2022            public java.lang.String getUniqueUrlTitle(long groupId,
2023                    java.lang.String articleId, java.lang.String urlTitle)
2024                    throws com.liferay.portal.kernel.exception.PortalException,
2025                            com.liferay.portal.kernel.exception.SystemException;
2026    
2027            /**
2028            * Returns <code>true</code> if the specified web content article exists.
2029            *
2030            * @param groupId the primary key of the group
2031            * @param articleId the primary key of the web content article
2032            * @return <code>true</code> if the specified web content article exists;
2033            <code>false</code> otherwise
2034            * @throws SystemException if a system exception occurred
2035            */
2036            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2037            public boolean hasArticle(long groupId, java.lang.String articleId)
2038                    throws com.liferay.portal.kernel.exception.SystemException;
2039    
2040            /**
2041            * Returns <code>true</code> if the web content article, specified by group
2042            * and article ID, is the latest version.
2043            *
2044            * @param groupId the primary key of the web content article's group
2045            * @param articleId the primary key of the web content article
2046            * @param version the web content article's version
2047            * @return <code>true</code> if the specified web content article is the
2048            latest version; <code>false</code> otherwise
2049            * @throws PortalException if a matching web content article could not be
2050            found
2051            * @throws SystemException if a system exception occurred
2052            */
2053            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2054            public boolean isLatestVersion(long groupId, java.lang.String articleId,
2055                    double version)
2056                    throws com.liferay.portal.kernel.exception.PortalException,
2057                            com.liferay.portal.kernel.exception.SystemException;
2058    
2059            /**
2060            * Returns <code>true</code> if the web content article, specified by group,
2061            * article ID, and workflow status, is the latest version.
2062            *
2063            * @param groupId the primary key of the web content article's group
2064            * @param articleId the primary key of the web content article
2065            * @param version the web content article's version
2066            * @param status the web content article's workflow status. For more
2067            information see {@link WorkflowConstants} for constants starting
2068            with the "STATUS_" prefix.
2069            * @return <code>true</code> if the specified web content article is the
2070            latest version; <code>false</code> otherwise
2071            * @throws PortalException if a matching web content article could not be
2072            found
2073            * @throws SystemException if a system exception occurred
2074            */
2075            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2076            public boolean isLatestVersion(long groupId, java.lang.String articleId,
2077                    double version, int status)
2078                    throws com.liferay.portal.kernel.exception.PortalException,
2079                            com.liferay.portal.kernel.exception.SystemException;
2080    
2081            /**
2082            * Moves the web content article matching the group and article ID to a new
2083            * folder.
2084            *
2085            * @param groupId the primary key of the web content article's group
2086            * @param articleId the primary key of the web content article
2087            * @param newFolderId the primary key of the web content article's new
2088            folder
2089            * @return the updated web content article, which was moved to a new folder
2090            * @throws PortalException if a matching web content article could not be
2091            found
2092            * @throws SystemException if a system exception occurred
2093            */
2094            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
2095            public com.liferay.portlet.journal.model.JournalArticle moveArticle(
2096                    long groupId, java.lang.String articleId, long newFolderId)
2097                    throws com.liferay.portal.kernel.exception.PortalException,
2098                            com.liferay.portal.kernel.exception.SystemException;
2099    
2100            /**
2101            * Moves the web content article from the Recycle Bin to a new folder.
2102            *
2103            * @param userId the primary key of the user updating the web content
2104            article
2105            * @param groupId the primary key of the web content article's group
2106            * @param article the web content article
2107            * @param newFolderId the primary key of the web content article's new
2108            folder
2109            * @param serviceContext the service context to be applied. Can set the
2110            modification date, portlet preferences, and can set whether to
2111            add the default command update for the web content article. With
2112            respect to social activities, by setting the service context's
2113            command to {@link
2114            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
2115            is considered a web content update activity; otherwise it is
2116            considered a web content add activity.
2117            * @return the updated web content article, which was moved from the Recycle
2118            Bin to a new folder
2119            * @throws PortalException if a trashed web content article with the primary
2120            key could not be found or if a portal exception occurred
2121            * @throws SystemException if a system exception occurred
2122            */
2123            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
2124            public com.liferay.portlet.journal.model.JournalArticle moveArticleFromTrash(
2125                    long userId, long groupId,
2126                    com.liferay.portlet.journal.model.JournalArticle article,
2127                    long newFolderId,
2128                    com.liferay.portal.service.ServiceContext serviceContext)
2129                    throws com.liferay.portal.kernel.exception.PortalException,
2130                            com.liferay.portal.kernel.exception.SystemException;
2131    
2132            /**
2133            * Moves the latest version of the web content article matching the group
2134            * and article ID to the recycle bin.
2135            *
2136            * @param userId the primary key of the user updating the web content
2137            article
2138            * @param article the web content article
2139            * @return the updated web content article, which was moved to the Recycle
2140            Bin
2141            * @throws PortalException if the user did not have permission to move the
2142            article to the Recycle Bin or if a portal exception occurred
2143            * @throws SystemException if a system exception occurred
2144            */
2145            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
2146            public com.liferay.portlet.journal.model.JournalArticle moveArticleToTrash(
2147                    long userId, com.liferay.portlet.journal.model.JournalArticle article)
2148                    throws com.liferay.portal.kernel.exception.PortalException,
2149                            com.liferay.portal.kernel.exception.SystemException;
2150    
2151            /**
2152            * Moves the latest version of the web content article matching the group
2153            * and article ID to the recycle bin.
2154            *
2155            * @param userId the primary key of the user updating the web content
2156            article
2157            * @param groupId the primary key of the web content article's group
2158            * @param articleId the primary key of the web content article
2159            * @return the moved web content article or <code>null</code> if no matching
2160            article was found
2161            * @throws PortalException if the user did not have permission to move the
2162            article to the Recycle Bin or if a portal exception occurred
2163            * @throws SystemException if a system exception occurred
2164            */
2165            public com.liferay.portlet.journal.model.JournalArticle moveArticleToTrash(
2166                    long userId, long groupId, java.lang.String articleId)
2167                    throws com.liferay.portal.kernel.exception.PortalException,
2168                            com.liferay.portal.kernel.exception.SystemException;
2169    
2170            public void rebuildTree(long companyId)
2171                    throws com.liferay.portal.kernel.exception.PortalException,
2172                            com.liferay.portal.kernel.exception.SystemException;
2173    
2174            /**
2175            * Removes the web content of the web content article matching the group,
2176            * article ID, and version, and language.
2177            *
2178            * @param groupId the primary key of the web content article's group
2179            * @param articleId the primary key of the web content article
2180            * @param version the web content article's version
2181            * @param languageId the primary key of the language locale to remove
2182            * @return the updated web content article with the locale removed
2183            * @throws PortalException if a matching web content article could not be
2184            found
2185            * @throws SystemException if a system exception occurred
2186            */
2187            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
2188            public com.liferay.portlet.journal.model.JournalArticle removeArticleLocale(
2189                    long groupId, java.lang.String articleId, double version,
2190                    java.lang.String languageId)
2191                    throws com.liferay.portal.kernel.exception.PortalException,
2192                            com.liferay.portal.kernel.exception.SystemException;
2193    
2194            /**
2195            * Restores the web content article from the Recycle Bin.
2196            *
2197            * @param userId the primary key of the user restoring the web content
2198            article
2199            * @param article the web content article
2200            * @throws PortalException if the web content article with the primary key
2201            could not be found in the Recycle Bin, if the user did not have
2202            permission to restore the article, or if a portal exception
2203            occurred
2204            * @throws SystemException if a system exception occurred
2205            */
2206            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
2207            public com.liferay.portlet.journal.model.JournalArticle restoreArticleFromTrash(
2208                    long userId, com.liferay.portlet.journal.model.JournalArticle article)
2209                    throws com.liferay.portal.kernel.exception.PortalException,
2210                            com.liferay.portal.kernel.exception.SystemException;
2211    
2212            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2213            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
2214                    long groupId, java.util.List<java.lang.Long> folderIds, int status,
2215                    int start, int end)
2216                    throws com.liferay.portal.kernel.exception.SystemException;
2217    
2218            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2219            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
2220                    long groupId, long folderId, int status, int start, int end)
2221                    throws com.liferay.portal.kernel.exception.SystemException;
2222    
2223            /**
2224            * Returns an ordered range of all the web content articles matching the
2225            * parameters without using the indexer, including a keywords parameter for
2226            * matching with the article's ID, title, description, and content, a DDM
2227            * structure key parameter, and a DDM template key parameter. It is
2228            * preferable to use the indexed version {@link #search(long, long, List,
2229            * long, String, String, String, LinkedHashMap, int, int, Sort)} instead of
2230            * this method wherever possible for performance reasons.
2231            *
2232            * <p>
2233            * Useful when paginating results. Returns a maximum of <code>end -
2234            * start</code> instances. <code>start</code> and <code>end</code> are not
2235            * primary keys, they are indexes in the result set. Thus, <code>0</code>
2236            * refers to the first result in the set. Setting both <code>start</code>
2237            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
2238            * result set.
2239            * </p>
2240            *
2241            * @param companyId the primary key of the web content article's company
2242            * @param groupId the primary key of the group (optionally <code>0</code>)
2243            * @param folderIds the primary keys of the web content article folders
2244            (optionally {@link java.util.Collections#EMPTY_LIST})
2245            * @param classNameId the primary key of the DDMStructure class if the web
2246            content article is related to a DDM structure, the primary key of
2247            the class name associated with the article, or {@link
2248            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2249            * @param keywords the keywords (space separated), which may occur in the
2250            web content article ID, title, description, or content
2251            (optionally <code>null</code>). If the keywords value is not
2252            <code>null</code>, the search uses the OR operator in connecting
2253            query criteria; otherwise it uses the AND operator.
2254            * @param version the web content article's version (optionally
2255            <code>null</code>)
2256            * @param type the web content article's type (optionally
2257            <code>null</code>)
2258            * @param ddmStructureKey the primary key of the web content article's DDM
2259            structure, if the article is related to a DDM structure, or
2260            <code>null</code> otherwise
2261            * @param ddmTemplateKey the primary key of the web content article's DDM
2262            template (optionally <code>null</code>). If the article is
2263            related to a DDM structure, the template's structure must match
2264            it.
2265            * @param displayDateGT the date after which a matching web content
2266            article's display date must be after (optionally
2267            <code>null</code>)
2268            * @param displayDateLT the date before which a matching web content
2269            article's display date must be before (optionally
2270            <code>null</code>)
2271            * @param status the web content article's workflow status. For more
2272            information see {@link WorkflowConstants} for constants starting
2273            with the "STATUS_" prefix.
2274            * @param reviewDate the web content article's scheduled review date
2275            (optionally <code>null</code>)
2276            * @param start the lower bound of the range of web content articles to
2277            return
2278            * @param end the upper bound of the range of web content articles to
2279            return (not inclusive)
2280            * @param obc the comparator to order the web content articles
2281            * @return the range of matching web content articles ordered by the
2282            comparator
2283            * @throws SystemException if a system exception occurred
2284            */
2285            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2286            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
2287                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
2288                    long classNameId, java.lang.String keywords, java.lang.Double version,
2289                    java.lang.String type, java.lang.String ddmStructureKey,
2290                    java.lang.String ddmTemplateKey, java.util.Date displayDateGT,
2291                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
2292                    int start, int end, com.liferay.portal.kernel.util.OrderByComparator obc)
2293                    throws com.liferay.portal.kernel.exception.SystemException;
2294    
2295            /**
2296            * Returns an ordered range of all the web content articles matching the
2297            * parameters without using the indexer, including keyword parameters for
2298            * article ID, title, description, and content, a DDM structure key
2299            * parameter, a DDM template key parameter, and an AND operator switch. It
2300            * is preferable to use the indexed version {@link #search(long, long, List,
2301            * long, String, String, String, String, String, String, String, String,
2302            * LinkedHashMap, boolean, int, int, Sort)} instead of this method wherever
2303            * possible for performance reasons.
2304            *
2305            * <p>
2306            * Useful when paginating results. Returns a maximum of <code>end -
2307            * start</code> instances. <code>start</code> and <code>end</code> are not
2308            * primary keys, they are indexes in the result set. Thus, <code>0</code>
2309            * refers to the first result in the set. Setting both <code>start</code>
2310            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
2311            * result set.
2312            * </p>
2313            *
2314            * @param companyId the primary key of the web content article's company
2315            * @param groupId the primary key of the group (optionally <code>0</code>)
2316            * @param folderIds the primary keys of the web content article folders
2317            (optionally {@link java.util.Collections#EMPTY_LIST})
2318            * @param classNameId the primary key of the DDMStructure class if the web
2319            content article is related to a DDM structure, the primary key of
2320            the class name associated with the article, or {@link
2321            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2322            * @param articleId the article ID keywords (space separated, optionally
2323            <code>null</code>)
2324            * @param version the web content article's version (optionally
2325            <code>null</code>)
2326            * @param title the title keywords (space separated, optionally
2327            <code>null</code>)
2328            * @param description the description keywords (space separated, optionally
2329            <code>null</code>)
2330            * @param content the content keywords (space separated, optionally
2331            <code>null</code>)
2332            * @param type the web content article's type (optionally
2333            <code>null</code>)
2334            * @param ddmStructureKey the primary key of the web content article's DDM
2335            structure, if the article is related to a DDM structure, or
2336            <code>null</code> otherwise
2337            * @param ddmTemplateKey the primary key of the web content article's DDM
2338            template (optionally <code>null</code>). If the article is
2339            related to a DDM structure, the template's structure must match
2340            it.
2341            * @param displayDateGT the date after which a matching web content
2342            article's display date must be after (optionally
2343            <code>null</code>)
2344            * @param displayDateLT the date before which a matching web content
2345            article's display date must be before (optionally
2346            <code>null</code>)
2347            * @param status the web content article's workflow status. For more
2348            information see {@link WorkflowConstants} for constants starting
2349            with the "STATUS_" prefix.
2350            * @param reviewDate the web content article's scheduled review date
2351            (optionally <code>null</code>)
2352            * @param andOperator whether every field must match its value or keywords,
2353            or just one field must match. Company, group, folder IDs, class
2354            name ID, and status must all match their values.
2355            * @param start the lower bound of the range of web content articles to
2356            return
2357            * @param end the upper bound of the range of web content articles to
2358            return (not inclusive)
2359            * @param obc the comparator to order the web content articles
2360            * @return the range of matching web content articles ordered by the
2361            comparator
2362            * @throws SystemException if a system exception occurred
2363            */
2364            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2365            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
2366                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
2367                    long classNameId, java.lang.String articleId, java.lang.Double version,
2368                    java.lang.String title, java.lang.String description,
2369                    java.lang.String content, java.lang.String type,
2370                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
2371                    java.util.Date displayDateGT, java.util.Date displayDateLT, int status,
2372                    java.util.Date reviewDate, boolean andOperator, int start, int end,
2373                    com.liferay.portal.kernel.util.OrderByComparator obc)
2374                    throws com.liferay.portal.kernel.exception.SystemException;
2375    
2376            /**
2377            * Returns an ordered range of all the web content articles matching the
2378            * parameters without using the indexer, including keyword parameters for
2379            * article ID, title, description, and content, a DDM structure keys
2380            * (plural) parameter, a DDM template keys (plural) parameter, and an AND
2381            * operator switch.
2382            *
2383            * <p>
2384            * Useful when paginating results. Returns a maximum of <code>end -
2385            * start</code> instances. <code>start</code> and <code>end</code> are not
2386            * primary keys, they are indexes in the result set. Thus, <code>0</code>
2387            * refers to the first result in the set. Setting both <code>start</code>
2388            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
2389            * result set.
2390            * </p>
2391            *
2392            * @param companyId the primary key of the web content article's company
2393            * @param groupId the primary key of the group (optionally <code>0</code>)
2394            * @param folderIds the primary keys of the web content article folders
2395            (optionally {@link java.util.Collections#EMPTY_LIST})
2396            * @param classNameId the primary key of the DDMStructure class if the web
2397            content article is related to a DDM structure, the primary key of
2398            the class name associated with the article, or {@link
2399            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2400            * @param articleId the article ID keywords (space separated, optionally
2401            <code>null</code>)
2402            * @param version the web content article's version (optionally
2403            <code>null</code>)
2404            * @param title the title keywords (space separated, optionally
2405            <code>null</code>)
2406            * @param description the description keywords (space separated, optionally
2407            <code>null</code>)
2408            * @param content the content keywords (space separated, optionally
2409            <code>null</code>)
2410            * @param type the web content article's type (optionally
2411            <code>null</code>)
2412            * @param ddmStructureKeys the primary keys of the web content article's
2413            DDM structures, if the article is related to a DDM structure, or
2414            <code>null</code> otherwise
2415            * @param ddmTemplateKeys the primary keys of the web content article's DDM
2416            templates (originally <code>null</code>). If the articles are
2417            related to a DDM structure, the template's structure must match
2418            it.
2419            * @param displayDateGT the date after which a matching web content
2420            article's display date must be after (optionally
2421            <code>null</code>)
2422            * @param displayDateLT the date before which a matching web content
2423            article's display date must be before (optionally
2424            <code>null</code>)
2425            * @param status the web content article's workflow status. For more
2426            information see {@link WorkflowConstants} for constants starting
2427            with the "STATUS_" prefix.
2428            * @param reviewDate the web content article's scheduled review date
2429            (optionally <code>null</code>)
2430            * @param andOperator whether every field must match its value or keywords,
2431            or just one field must match.  Company, group, folder IDs, class
2432            name ID, and status must all match their values.
2433            * @param start the lower bound of the range of web content articles to
2434            return
2435            * @param end the upper bound of the range of web content articles to
2436            return (not inclusive)
2437            * @param obc the comparator to order the web content articles
2438            * @return the range of matching web content articles ordered by the
2439            comparator
2440            * @throws SystemException if a system exception occurred
2441            */
2442            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2443            public java.util.List<com.liferay.portlet.journal.model.JournalArticle> search(
2444                    long companyId, long groupId, java.util.List<java.lang.Long> folderIds,
2445                    long classNameId, java.lang.String articleId, java.lang.Double version,
2446                    java.lang.String title, java.lang.String description,
2447                    java.lang.String content, java.lang.String type,
2448                    java.lang.String[] ddmStructureKeys,
2449                    java.lang.String[] ddmTemplateKeys, java.util.Date displayDateGT,
2450                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
2451                    boolean andOperator, int start, int end,
2452                    com.liferay.portal.kernel.util.OrderByComparator obc)
2453                    throws com.liferay.portal.kernel.exception.SystemException;
2454    
2455            /**
2456            * Returns an ordered range of all the web content articles matching the
2457            * parameters using the indexer, including a keywords parameter for matching
2458            * an article's ID, title, description, or content, a DDM structure key
2459            * parameter, a DDM template key parameter, and a finder hash map parameter.
2460            * It is preferable to use this method instead of the non-indexed version
2461            * whenever possible for performance reasons.
2462            *
2463            * <p>
2464            * Useful when paginating results. Returns a maximum of <code>end -
2465            * start</code> instances. <code>start</code> and <code>end</code> are not
2466            * primary keys, they are indexes in the result set. Thus, <code>0</code>
2467            * refers to the first result in the set. Setting both <code>start</code>
2468            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
2469            * result set.
2470            * </p>
2471            *
2472            * @param companyId the primary key of the web content article's company
2473            * @param groupId the primary key of the group (optionally <code>0</code>)
2474            * @param folderIds the primary keys of the web content article folders
2475            (optionally {@link java.util.Collections#EMPTY_LIST})
2476            * @param classNameId the primary key of the DDMStructure class if the web
2477            content article is related to a DDM structure, the primary key of
2478            the class name associated with the article, or {@link
2479            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2480            * @param ddmStructureKey the primary key of the web content article's DDM
2481            structure, if the article is related to a DDM structure, or
2482            <code>null</code> otherwise
2483            * @param ddmTemplateKey the primary key of the web content article's DDM
2484            template (optionally <code>null</code>). If the article is
2485            related to a DDM structure, the template's structure must match
2486            it.
2487            * @param keywords the keywords (space separated), which may occur in the
2488            web content article ID, title, description, or content
2489            (optionally <code>null</code>). If the keywords value is not
2490            <code>null</code>, the search uses the OR operator in connecting
2491            query criteria; otherwise it uses the AND operator.
2492            * @param params the finder parameters (optionally <code>null</code>)
2493            * @param start the lower bound of the range of web content articles to
2494            return
2495            * @param end the upper bound of the range of web content articles to
2496            return (not inclusive)
2497            * @param sort the field, type, and direction by which to sort (optionally
2498            <code>null</code>)
2499            * @return the matching web content articles ordered by <code>sort</code>
2500            * @throws SystemException if a system exception occurred
2501            */
2502            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2503            public com.liferay.portal.kernel.search.Hits search(long companyId,
2504                    long groupId, java.util.List<java.lang.Long> folderIds,
2505                    long classNameId, java.lang.String ddmStructureKey,
2506                    java.lang.String ddmTemplateKey, java.lang.String keywords,
2507                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
2508                    int start, int end, com.liferay.portal.kernel.search.Sort sort)
2509                    throws com.liferay.portal.kernel.exception.SystemException;
2510    
2511            /**
2512            * Returns an ordered range of all the web content articles matching the
2513            * parameters using the indexer, including a keywords parameter for matching
2514            * an article's ID, title, description, or content, a DDM structure key
2515            * parameter, a DDM template key parameter, an AND operator switch, and
2516            * parameters for type, status, a finder hash map. It is preferable to use
2517            * this method instead of the non-indexed version whenever possible for
2518            * performance reasons.
2519            *
2520            * <p>
2521            * Useful when paginating results. Returns a maximum of <code>end -
2522            * start</code> instances. <code>start</code> and <code>end</code> are not
2523            * primary keys, they are indexes in the result set. Thus, <code>0</code>
2524            * refers to the first result in the set. Setting both <code>start</code>
2525            * and <code>end</code> to {@link QueryUtil#ALL_POS} will return the full
2526            * result set.
2527            * </p>
2528            *
2529            * @param companyId the primary key of the web content article's company
2530            * @param groupId the primary key of the group (optionally <code>0</code>)
2531            * @param folderIds the primary keys of the web content article folders
2532            (optionally {@link java.util.Collections#EMPTY_LIST})
2533            * @param classNameId the primary key of the DDMStructure class if the web
2534            content article is related to a DDM structure, the primary key of
2535            the class name associated with the article, or {@link
2536            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2537            * @param articleId the article ID keywords (space separated, optionally
2538            <code>null</code>)
2539            * @param title the title keywords (space separated, optionally
2540            <code>null</code>)
2541            * @param description the description keywords (space separated, optionally
2542            <code>null</code>)
2543            * @param content the content keywords (space separated, optionally
2544            <code>null</code>)
2545            * @param type the web content article's type (optionally
2546            <code>null</code>)
2547            * @param status the web content article's workflow status. For more
2548            information see {@link WorkflowConstants} for constants starting
2549            with the "STATUS_" prefix.
2550            * @param ddmStructureKey the primary key of the web content article's DDM
2551            structure, if the article is related to a DDM structure, or
2552            <code>null</code> otherwise
2553            * @param ddmTemplateKey the primary key of the web content article's DDM
2554            template (optionally <code>null</code>). If the article is
2555            related to a DDM structure, the template's structure must match
2556            it.
2557            * @param params the finder parameters (optionally <code>null</code>). Can
2558            set parameter <code>"includeDiscussions"</code> to
2559            <code>true</code> to search for the keywords in the web content
2560            article discussions.
2561            * @param andSearch whether every field must match its value or keywords,
2562            or just one field must match
2563            * @param start the lower bound of the range of web content articles to
2564            return
2565            * @param end the upper bound of the range of web content articles to
2566            return (not inclusive)
2567            * @param sort the field, type, and direction by which to sort (optionally
2568            <code>null</code>)
2569            * @return the matching web content articles ordered by <code>sort</code>
2570            * @throws SystemException if a system exception occurred
2571            */
2572            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2573            public com.liferay.portal.kernel.search.Hits search(long companyId,
2574                    long groupId, java.util.List<java.lang.Long> folderIds,
2575                    long classNameId, java.lang.String articleId, java.lang.String title,
2576                    java.lang.String description, java.lang.String content,
2577                    java.lang.String type, java.lang.String status,
2578                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
2579                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
2580                    boolean andSearch, int start, int end,
2581                    com.liferay.portal.kernel.search.Sort sort)
2582                    throws com.liferay.portal.kernel.exception.SystemException;
2583    
2584            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2585            public com.liferay.portal.kernel.search.Hits search(long groupId,
2586                    long userId, long creatorUserId, int status, int start, int end)
2587                    throws com.liferay.portal.kernel.exception.PortalException,
2588                            com.liferay.portal.kernel.exception.SystemException;
2589    
2590            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2591            public int searchCount(long groupId,
2592                    java.util.List<java.lang.Long> folderIds, int status)
2593                    throws com.liferay.portal.kernel.exception.SystemException;
2594    
2595            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2596            public int searchCount(long groupId, long folderId, int status)
2597                    throws com.liferay.portal.kernel.exception.SystemException;
2598    
2599            /**
2600            * Returns the number of web content articles matching the parameters,
2601            * including a keywords parameter for matching with the article's ID, title,
2602            * description, and content, a DDM structure key parameter, and a DDM
2603            * template key parameter.
2604            *
2605            * @param companyId the primary key of the web content article's company
2606            * @param groupId the primary key of the group (optionally <code>0</code>)
2607            * @param folderIds the primary keys of the web content article folders
2608            (optionally {@link java.util.Collections#EMPTY_LIST})
2609            * @param classNameId the primary key of the DDMStructure class if the web
2610            content article is related to a DDM structure, the primary key of
2611            the class name associated with the article, or {@link
2612            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2613            * @param keywords the keywords (space separated), which may occur in the
2614            web content article ID, title, description, or content
2615            (optionally <code>null</code>). If the keywords value is not
2616            <code>null</code>, the search uses the OR operator in connecting
2617            query criteria; otherwise it uses the AND operator.
2618            * @param version the web content article's version (optionally
2619            <code>null</code>)
2620            * @param type the web content article's type (optionally
2621            <code>null</code>)
2622            * @param ddmStructureKey the primary key of the web content article's DDM
2623            structure, if the article is related to a DDM structure, or
2624            <code>null</code> otherwise
2625            * @param ddmTemplateKey the primary key of the web content article's DDM
2626            template (optionally <code>null</code>). If the article is
2627            related to a DDM structure, the template's structure must match
2628            it.
2629            * @param displayDateGT the date after which a matching web content
2630            article's display date must be after (optionally
2631            <code>null</code>)
2632            * @param displayDateLT the date before which a matching web content
2633            article's display date must be before (optionally
2634            <code>null</code>)
2635            * @param status the web content article's workflow status. For more
2636            information see {@link WorkflowConstants} for constants starting
2637            with the "STATUS_" prefix.
2638            * @param reviewDate the web content article's scheduled review date
2639            (optionally <code>null</code>)
2640            * @return the number of matching web content articles
2641            * @throws SystemException if a system exception occurred
2642            */
2643            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2644            public int searchCount(long companyId, long groupId,
2645                    java.util.List<java.lang.Long> folderIds, long classNameId,
2646                    java.lang.String keywords, java.lang.Double version,
2647                    java.lang.String type, java.lang.String ddmStructureKey,
2648                    java.lang.String ddmTemplateKey, java.util.Date displayDateGT,
2649                    java.util.Date displayDateLT, int status, java.util.Date reviewDate)
2650                    throws com.liferay.portal.kernel.exception.SystemException;
2651    
2652            /**
2653            * Returns the number of web content articles matching the parameters,
2654            * including keyword parameters for article ID, title, description, and
2655            * content, a DDM structure key parameter, a DDM template key parameter, and
2656            * an AND operator switch.
2657            *
2658            * @param companyId the primary key of the web content article's company
2659            * @param groupId the primary key of the group (optionally <code>0</code>)
2660            * @param folderIds the primary keys of the web content article folders
2661            (optionally {@link java.util.Collections#EMPTY_LIST})
2662            * @param classNameId the primary key of the DDMStructure class if the web
2663            content article is related to a DDM structure, the primary key of
2664            the class name associated with the article, or {@link
2665            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2666            * @param articleId the article ID keywords (space separated, optionally
2667            <code>null</code>)
2668            * @param version the web content article's version (optionally
2669            <code>null</code>)
2670            * @param title the title keywords (space separated, optionally
2671            <code>null</code>)
2672            * @param description the description keywords (space separated, optionally
2673            <code>null</code>)
2674            * @param content the content keywords (space separated, optionally
2675            <code>null</code>)
2676            * @param type the web content article's type (optionally
2677            <code>null</code>)
2678            * @param ddmStructureKey the primary key of the web content article's DDM
2679            structure, if the article is related to a DDM structure, or
2680            <code>null</code> otherwise
2681            * @param ddmTemplateKey the primary key of the web content article's DDM
2682            template (optionally <code>null</code>). If the article is
2683            related to a DDM structure, the template's structure must match
2684            it.
2685            * @param displayDateGT the date after which a matching web content
2686            article's display date must be after (optionally
2687            <code>null</code>)
2688            * @param displayDateLT the date before which a matching web content
2689            article's display date must be before (optionally
2690            <code>null</code>)
2691            * @param status the web content article's workflow status. For more
2692            information see {@link WorkflowConstants} for constants starting
2693            with the "STATUS_" prefix.
2694            * @param reviewDate the web content article's scheduled review date
2695            (optionally <code>null</code>)
2696            * @param andOperator whether every field must match its value or keywords,
2697            or just one field must match. Group, folder IDs, class name ID,
2698            and status must all match their values.
2699            * @return the number of matching web content articles
2700            * @throws SystemException if a system exception occurred
2701            */
2702            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2703            public int searchCount(long companyId, long groupId,
2704                    java.util.List<java.lang.Long> folderIds, long classNameId,
2705                    java.lang.String articleId, java.lang.Double version,
2706                    java.lang.String title, java.lang.String description,
2707                    java.lang.String content, java.lang.String type,
2708                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
2709                    java.util.Date displayDateGT, java.util.Date displayDateLT, int status,
2710                    java.util.Date reviewDate, boolean andOperator)
2711                    throws com.liferay.portal.kernel.exception.SystemException;
2712    
2713            /**
2714            * Returns the number of web content articles matching the parameters,
2715            * including keyword parameters for article ID, title, description, and
2716            * content, a DDM structure keys (plural) parameter, a DDM template keys
2717            * (plural) parameter, and an AND operator switch.
2718            *
2719            * @param companyId the primary key of the web content article's company
2720            * @param groupId the primary key of the group (optionally <code>0</code>)
2721            * @param folderIds the primary keys of the web content article folders
2722            (optionally {@link java.util.Collections#EMPTY_LIST})
2723            * @param classNameId the primary key of the DDMStructure class if the web
2724            content article is related to a DDM structure, the primary key of
2725            the class name associated with the article, or {@link
2726            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
2727            * @param articleId the article ID keywords (space separated, optionally
2728            <code>null</code>)
2729            * @param version the web content article's version (optionally
2730            <code>null</code>)
2731            * @param title the title keywords (space separated, optionally
2732            <code>null</code>)
2733            * @param description the description keywords (space separated, optionally
2734            <code>null</code>)
2735            * @param content the content keywords (space separated, optionally
2736            <code>null</code>)
2737            * @param type the web content article's type (optionally
2738            <code>null</code>)
2739            * @param ddmStructureKeys the primary keys of the web content article's
2740            DDM structures, if the article is related to a DDM structure, or
2741            <code>null</code> otherwise
2742            * @param ddmTemplateKeys the primary keys of the web content article's DDM
2743            templates (originally <code>null</code>). If the articles are
2744            related to a DDM structure, the template's structure must match
2745            it.
2746            * @param displayDateGT the date after which a matching web content
2747            article's display date must be after (optionally
2748            <code>null</code>)
2749            * @param displayDateLT the date before which a matching web content
2750            article's display date must be before (optionally
2751            <code>null</code>)
2752            * @param status the web content article's workflow status. For more
2753            information see {@link WorkflowConstants} for constants starting
2754            with the "STATUS_" prefix.
2755            * @param reviewDate the web content article's scheduled review date
2756            (optionally <code>null</code>)
2757            * @param andOperator whether every field must match its value or keywords,
2758            or just one field must match.  Group, folder IDs, class name ID,
2759            and status must all match their values.
2760            * @return the number of matching web content articles
2761            * @throws SystemException if a system exception occurred
2762            */
2763            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
2764            public int searchCount(long companyId, long groupId,
2765                    java.util.List<java.lang.Long> folderIds, long classNameId,
2766                    java.lang.String articleId, java.lang.Double version,
2767                    java.lang.String title, java.lang.String description,
2768                    java.lang.String content, java.lang.String type,
2769                    java.lang.String[] ddmStructureKeys,
2770                    java.lang.String[] ddmTemplateKeys, java.util.Date displayDateGT,
2771                    java.util.Date displayDateLT, int status, java.util.Date reviewDate,
2772                    boolean andOperator)
2773                    throws com.liferay.portal.kernel.exception.SystemException;
2774    
2775            public void setTreePaths(long folderId, java.lang.String treePath,
2776                    boolean reindex)
2777                    throws com.liferay.portal.kernel.exception.PortalException,
2778                            com.liferay.portal.kernel.exception.SystemException;
2779    
2780            /**
2781            * Subscribes the user to notifications for the web content article matching
2782            * the group, notifying him the instant versions of the article are created,
2783            * deleted, or modified.
2784            *
2785            * @param userId the primary key of the user to subscribe
2786            * @param groupId the primary key of the group
2787            * @throws PortalException if a matching user or group could not be found
2788            * @throws SystemException if a system exception occurred
2789            */
2790            public void subscribe(long userId, long groupId)
2791                    throws com.liferay.portal.kernel.exception.PortalException,
2792                            com.liferay.portal.kernel.exception.SystemException;
2793    
2794            /**
2795            * Unsubscribes the user from notifications for the web content article
2796            * matching the group.
2797            *
2798            * @param userId the primary key of the user to unsubscribe
2799            * @param groupId the primary key of the group
2800            * @throws PortalException if a matching user or subscription could not be
2801            found
2802            * @throws SystemException if a system exception occurred
2803            */
2804            public void unsubscribe(long userId, long groupId)
2805                    throws com.liferay.portal.kernel.exception.PortalException,
2806                            com.liferay.portal.kernel.exception.SystemException;
2807    
2808            /**
2809            * Updates the web content article matching the version, replacing its
2810            * folder, title, description, content, and layout UUID.
2811            *
2812            * @param userId the primary key of the user updating the web content
2813            article
2814            * @param groupId the primary key of the web content article's group
2815            * @param folderId the primary key of the web content article folder
2816            * @param articleId the primary key of the web content article
2817            * @param version the web content article's version
2818            * @param titleMap the web content article's locales and localized titles
2819            * @param descriptionMap the web content article's locales and localized
2820            descriptions
2821            * @param content the HTML content wrapped in XML. For more information,
2822            see the content example in the class description for {@link
2823            JournalArticleLocalServiceImpl}.
2824            * @param layoutUuid the unique string identifying the web content
2825            article's display page
2826            * @param serviceContext the service context to be applied. Can set the
2827            modification date, expando bridge attributes, asset category IDs,
2828            asset tag names, asset link entry IDs, workflow actions, the
2829            "defaultLanguageId" and "urlTitle" attributes, and can set
2830            whether to add the default command update for the web content
2831            article. With respect to social activities, by setting the
2832            service context's command to {@link
2833            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
2834            is considered a web content update activity; otherwise it is
2835            considered a web content add activity.
2836            * @return the updated web content article
2837            * @throws PortalException if a user with the primary key or a matching web
2838            content article could not be found, or if a portal exception
2839            occurred
2840            * @throws SystemException if a system exception occurred
2841            */
2842            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
2843                    long userId, long groupId, long folderId, java.lang.String articleId,
2844                    double version,
2845                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
2846                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
2847                    java.lang.String content, java.lang.String layoutUuid,
2848                    com.liferay.portal.service.ServiceContext serviceContext)
2849                    throws com.liferay.portal.kernel.exception.PortalException,
2850                            com.liferay.portal.kernel.exception.SystemException;
2851    
2852            /**
2853            * Updates the web content article with additional parameters.
2854            *
2855            * @param userId the primary key of the user updating the web content
2856            article
2857            * @param groupId the primary key of the web content article's group
2858            * @param folderId the primary key of the web content article folder
2859            * @param articleId the primary key of the web content article
2860            * @param version the web content article's version
2861            * @param titleMap the web content article's locales and localized titles
2862            * @param descriptionMap the web content article's locales and localized
2863            descriptions
2864            * @param content the HTML content wrapped in XML. For more information,
2865            see the content example in the class description for {@link
2866            JournalArticleLocalServiceImpl}.
2867            * @param type the structure's type, if the web content article is related
2868            to a DDM structure. For more information, see {@link
2869            com.liferay.portlet.dynamicdatamapping.model.DDMStructureConstants}.
2870            * @param ddmStructureKey the primary key of the web content article's DDM
2871            structure, if the article is related to a DDM structure, or
2872            <code>null</code> otherwise
2873            * @param ddmTemplateKey the primary key of the web content article's DDM
2874            template (optionally <code>null</code>). If the article is
2875            related to a DDM structure, the template's structure must match
2876            it.
2877            * @param layoutUuid the unique string identifying the web content
2878            article's display page
2879            * @param displayDateMonth the month the web content article is set to
2880            display
2881            * @param displayDateDay the calendar day the web content article is set to
2882            display
2883            * @param displayDateYear the year the web content article is set to
2884            display
2885            * @param displayDateHour the hour the web content article is set to
2886            display
2887            * @param displayDateMinute the minute the web content article is set to
2888            display
2889            * @param expirationDateMonth the month the web content article is set to
2890            expire
2891            * @param expirationDateDay the calendar day the web content article is set
2892            to expire
2893            * @param expirationDateYear the year the web content article is set to
2894            expire
2895            * @param expirationDateHour the hour the web content article is set to
2896            expire
2897            * @param expirationDateMinute the minute the web content article is set to
2898            expire
2899            * @param neverExpire whether the web content article is not set to auto
2900            expire
2901            * @param reviewDateMonth the month the web content article is set for
2902            review
2903            * @param reviewDateDay the calendar day the web content article is set for
2904            review
2905            * @param reviewDateYear the year the web content article is set for review
2906            * @param reviewDateHour the hour the web content article is set for review
2907            * @param reviewDateMinute the minute the web content article is set for
2908            review
2909            * @param neverReview whether the web content article is not set for review
2910            * @param indexable whether the web content is searchable
2911            * @param smallImage whether to update web content article's a small image.
2912            A file must be passed in as <code>smallImageFile</code> value,
2913            otherwise the current small image is deleted.
2914            * @param smallImageURL the web content article's small image URL
2915            (optionally <code>null</code>)
2916            * @param smallImageFile the web content article's new small image file
2917            (optionally <code>null</code>). Must pass in
2918            <code>smallImage</code> value of <code>true</code> to replace the
2919            article's small image file.
2920            * @param images the web content's images (optionally <code>null</code>)
2921            * @param articleURL the web content article's accessible URL (optionally
2922            <code>null</code>)
2923            * @param serviceContext the service context to be applied. Can set the
2924            modification date, expando bridge attributes, asset category IDs,
2925            asset tag names, asset link entry IDs, workflow actions, the
2926            "defaultLanguageId" and "urlTitle" attributes, and can set
2927            whether to add the default command update for the web content
2928            article. With respect to social activities, by setting the
2929            service context's command to {@link
2930            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
2931            is considered a web content update activity; otherwise it is
2932            considered a web content add activity.
2933            * @return the updated web content article
2934            * @throws PortalException if a user with the primary key or a matching web
2935            content article could not be found, or if a portal exception
2936            occurred
2937            * @throws SystemException if a system exception occurred
2938            */
2939            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
2940            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
2941                    long userId, long groupId, long folderId, java.lang.String articleId,
2942                    double version,
2943                    java.util.Map<java.util.Locale, java.lang.String> titleMap,
2944                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
2945                    java.lang.String content, java.lang.String type,
2946                    java.lang.String ddmStructureKey, java.lang.String ddmTemplateKey,
2947                    java.lang.String layoutUuid, int displayDateMonth, int displayDateDay,
2948                    int displayDateYear, int displayDateHour, int displayDateMinute,
2949                    int expirationDateMonth, int expirationDateDay, int expirationDateYear,
2950                    int expirationDateHour, int expirationDateMinute, boolean neverExpire,
2951                    int reviewDateMonth, int reviewDateDay, int reviewDateYear,
2952                    int reviewDateHour, int reviewDateMinute, boolean neverReview,
2953                    boolean indexable, boolean smallImage, java.lang.String smallImageURL,
2954                    java.io.File smallImageFile,
2955                    java.util.Map<java.lang.String, byte[]> images,
2956                    java.lang.String articleURL,
2957                    com.liferay.portal.service.ServiceContext serviceContext)
2958                    throws com.liferay.portal.kernel.exception.PortalException,
2959                            com.liferay.portal.kernel.exception.SystemException;
2960    
2961            /**
2962            * Updates the web content article matching the version, replacing its
2963            * folder and content.
2964            *
2965            * @param userId the primary key of the user updating the web content
2966            article
2967            * @param groupId the primary key of the web content article's group
2968            * @param folderId the primary key of the web content article folder
2969            * @param articleId the primary key of the web content article
2970            * @param version the web content article's version
2971            * @param content the HTML content wrapped in XML. For more information,
2972            see the content example in the class description for {@link
2973            JournalArticleLocalServiceImpl}.
2974            * @param serviceContext the service context to be applied. Can set the
2975            modification date, expando bridge attributes, asset category IDs,
2976            asset tag names, asset link entry IDs, workflow actions, the
2977            "defaultLanguageId" and "urlTitle" attributes, and can set
2978            whether to add the default command update for the web content
2979            article. With respect to social activities, by setting the
2980            service context's command to {@link
2981            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
2982            is considered a web content update activity; otherwise it is
2983            considered a web content add activity.
2984            * @return the updated web content article
2985            * @throws PortalException if a user with the primary key or a matching web
2986            content article could not be found, or if a portal exception
2987            occurred
2988            * @throws SystemException if a system exception occurred
2989            */
2990            public com.liferay.portlet.journal.model.JournalArticle updateArticle(
2991                    long userId, long groupId, long folderId, java.lang.String articleId,
2992                    double version, java.lang.String content,
2993                    com.liferay.portal.service.ServiceContext serviceContext)
2994                    throws com.liferay.portal.kernel.exception.PortalException,
2995                            com.liferay.portal.kernel.exception.SystemException;
2996    
2997            /**
2998            * @deprecated As of 6.2.0, replaced by {@link
2999            #updateArticleTranslation(long, String, double, Locale,
3000            String, String, String, Map, ServiceContext)}
3001            */
3002            public com.liferay.portlet.journal.model.JournalArticle updateArticleTranslation(
3003                    long groupId, java.lang.String articleId, double version,
3004                    java.util.Locale locale, java.lang.String title,
3005                    java.lang.String description, java.lang.String content,
3006                    java.util.Map<java.lang.String, byte[]> images)
3007                    throws com.liferay.portal.kernel.exception.PortalException,
3008                            com.liferay.portal.kernel.exception.SystemException;
3009    
3010            /**
3011            * Updates the translation of the web content article.
3012            *
3013            * @param groupId the primary key of the web content article's group
3014            * @param articleId the primary key of the web content article
3015            * @param version the web content article's version
3016            * @param locale the locale of the web content article's display template
3017            * @param title the translated web content article title
3018            * @param description the translated web content article description
3019            * @param content the HTML content wrapped in XML. For more information,
3020            see the content example in the class description for {@link
3021            JournalArticleLocalServiceImpl}.
3022            * @param images the web content's images
3023            * @param serviceContext the service context to be applied. Can set the
3024            modification date and "urlTitle" attribute for the web content
3025            article.
3026            * @return the updated web content article
3027            * @throws PortalException if a user with the primary key or a matching web
3028            content article could not be found, or if a portal exception
3029            occurred
3030            * @throws SystemException if a system exception occurred
3031            */
3032            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
3033            public com.liferay.portlet.journal.model.JournalArticle updateArticleTranslation(
3034                    long groupId, java.lang.String articleId, double version,
3035                    java.util.Locale locale, java.lang.String title,
3036                    java.lang.String description, java.lang.String content,
3037                    java.util.Map<java.lang.String, byte[]> images,
3038                    com.liferay.portal.service.ServiceContext serviceContext)
3039                    throws com.liferay.portal.kernel.exception.PortalException,
3040                            com.liferay.portal.kernel.exception.SystemException;
3041    
3042            /**
3043            * Updates the web content article's asset with the new asset categories,
3044            * tag names, and link entries, removing and adding them as necessary.
3045            *
3046            * @param userId the primary key of the user updating the web content
3047            article's asset
3048            * @param article the web content article
3049            * @param assetCategoryIds the primary keys of the new asset categories
3050            * @param assetTagNames the new asset tag names
3051            * @param assetLinkEntryIds the primary keys of the new asset link entries
3052            * @throws PortalException if a portal exception occurred
3053            * @throws SystemException if a system exception occurred
3054            */
3055            public void updateAsset(long userId,
3056                    com.liferay.portlet.journal.model.JournalArticle article,
3057                    long[] assetCategoryIds, java.lang.String[] assetTagNames,
3058                    long[] assetLinkEntryIds)
3059                    throws com.liferay.portal.kernel.exception.PortalException,
3060                            com.liferay.portal.kernel.exception.SystemException;
3061    
3062            /**
3063            * Updates the web content article matching the group, article ID, and
3064            * version, replacing its content.
3065            *
3066            * @param groupId the primary key of the web content article's group
3067            * @param articleId the primary key of the web content article
3068            * @param version the web content article's version
3069            * @param content the HTML content wrapped in XML. For more information,
3070            see the content example in the class description for {@link
3071            JournalArticleLocalServiceImpl}.
3072            * @return the updated web content article
3073            * @throws PortalException if a matching web content article could not be
3074            found
3075            * @throws SystemException if a system exception occurred
3076            */
3077            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
3078            public com.liferay.portlet.journal.model.JournalArticle updateContent(
3079                    long groupId, java.lang.String articleId, double version,
3080                    java.lang.String content)
3081                    throws com.liferay.portal.kernel.exception.PortalException,
3082                            com.liferay.portal.kernel.exception.SystemException;
3083    
3084            /**
3085            * Updates the workflow status of the web content article.
3086            *
3087            * @param userId the primary key of the user updating the web content
3088            article's status
3089            * @param article the web content article
3090            * @param status the web content article's workflow status. For more
3091            information see {@link WorkflowConstants} for constants starting
3092            with the "STATUS_" prefix.
3093            * @param articleURL the web content article's accessible URL
3094            * @param workflowContext the web content article's configured workflow
3095            context
3096            * @param serviceContext the service context to be applied. Can set the
3097            modification date, status date, and portlet preferences. With
3098            respect to social activities, by setting the service context's
3099            command to {@link
3100            com.liferay.portal.kernel.util.Constants#UPDATE}, the invocation
3101            is considered a web content update activity; otherwise it is
3102            considered a web content add activity.
3103            * @return the updated web content article
3104            * @throws PortalException if a portal exception occurred
3105            * @throws SystemException if a system exception occurred
3106            */
3107            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
3108            public com.liferay.portlet.journal.model.JournalArticle updateStatus(
3109                    long userId, com.liferay.portlet.journal.model.JournalArticle article,
3110                    int status, java.lang.String articleURL,
3111                    java.util.Map<java.lang.String, java.io.Serializable> workflowContext,
3112                    com.liferay.portal.service.ServiceContext serviceContext)
3113                    throws com.liferay.portal.kernel.exception.PortalException,
3114                            com.liferay.portal.kernel.exception.SystemException;
3115    
3116            /**
3117            * Updates the workflow status of the web content article matching the class
3118            * PK.
3119            *
3120            * @param userId the primary key of the user updating the web content
3121            article's status
3122            * @param classPK the primary key of the DDM structure, if the web content
3123            article is related to a DDM structure, the primary key of the
3124            class associated with the article, or <code>0</code> otherwise
3125            * @param status the web content article's workflow status. For more
3126            information see {@link WorkflowConstants} for constants starting
3127            with the "STATUS_" prefix.
3128            * @param workflowContext the web content article's configured workflow
3129            * @param serviceContext the service context to be applied. Can set the
3130            modification date, portlet preferences, and can set whether to
3131            add the default command update for the web content article.
3132            * @return the updated web content article
3133            * @throws PortalException if a matching web content article could not be
3134            found or if a portal exception occurred
3135            * @throws SystemException if a system exception occurred
3136            */
3137            public com.liferay.portlet.journal.model.JournalArticle updateStatus(
3138                    long userId, long classPK, int status,
3139                    java.util.Map<java.lang.String, java.io.Serializable> workflowContext,
3140                    com.liferay.portal.service.ServiceContext serviceContext)
3141                    throws com.liferay.portal.kernel.exception.PortalException,
3142                            com.liferay.portal.kernel.exception.SystemException;
3143    
3144            /**
3145            * Updates the workflow status of the web content article matching the
3146            * group, article ID, and version.
3147            *
3148            * @param userId the primary key of the user updating the web content
3149            article's status
3150            * @param groupId the primary key of the web content article's group
3151            * @param articleId the primary key of the web content article
3152            * @param version the web content article's version
3153            * @param status the web content article's workflow status. For more
3154            information see {@link WorkflowConstants} for constants starting
3155            with the "STATUS_" prefix.
3156            * @param articleURL the web content article's accessible URL
3157            * @param workflowContext the web content article's configured workflow
3158            * @param serviceContext the service context to be applied. Can set the
3159            modification date, portlet preferences, and can set whether to
3160            add the default command update for the web content article.
3161            * @return the updated web content article
3162            * @throws PortalException if a matching web content article could not be
3163            found or if a portal exception occurred
3164            * @throws SystemException if a system exception occurred
3165            */
3166            public com.liferay.portlet.journal.model.JournalArticle updateStatus(
3167                    long userId, long groupId, java.lang.String articleId, double version,
3168                    int status, java.lang.String articleURL,
3169                    java.util.Map<java.lang.String, java.io.Serializable> workflowContext,
3170                    com.liferay.portal.service.ServiceContext serviceContext)
3171                    throws com.liferay.portal.kernel.exception.PortalException,
3172                            com.liferay.portal.kernel.exception.SystemException;
3173    
3174            /**
3175            * Updates the web content articles matching the group, class name ID, and
3176            * DDM template key, replacing the DDM template key with a new one.
3177            *
3178            * @param groupId the primary key of the web content article's group
3179            * @param classNameId the primary key of the DDMStructure class if the web
3180            content article is related to a DDM structure, the primary key of
3181            the class name associated with the article, or {@link
3182            JournalArticleConstants#CLASSNAME_ID_DEFAULT} otherwise
3183            * @param oldDDMTemplateKey the primary key of the web content article's
3184            old DDM template
3185            * @param newDDMTemplateKey the primary key of the web content article's
3186            new DDM template
3187            * @throws SystemException if a system exception occurred
3188            */
3189            public void updateTemplateId(long groupId, long classNameId,
3190                    java.lang.String oldDDMTemplateKey, java.lang.String newDDMTemplateKey)
3191                    throws com.liferay.portal.kernel.exception.SystemException;
3192    }