001    /**
002     * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.journal.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.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.service.BaseLocalService;
026    import com.liferay.portal.service.PersistedModelLocalService;
027    
028    /**
029     * Provides the local service interface for JournalArticleResource. Methods of this
030     * service will not have security checks based on the propagated JAAS
031     * credentials because this service can only be accessed from within the same
032     * VM.
033     *
034     * @author Brian Wing Shun Chan
035     * @see JournalArticleResourceLocalServiceUtil
036     * @see com.liferay.portlet.journal.service.base.JournalArticleResourceLocalServiceBaseImpl
037     * @see com.liferay.portlet.journal.service.impl.JournalArticleResourceLocalServiceImpl
038     * @generated
039     */
040    @ProviderType
041    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
042            PortalException.class, SystemException.class})
043    public interface JournalArticleResourceLocalService extends BaseLocalService,
044            PersistedModelLocalService {
045            /*
046             * NOTE FOR DEVELOPERS:
047             *
048             * Never modify or reference this interface directly. Always use {@link JournalArticleResourceLocalServiceUtil} to access the journal article resource local service. Add custom service methods to {@link com.liferay.portlet.journal.service.impl.JournalArticleResourceLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
049             */
050    
051            /**
052            * Adds the journal article resource to the database. Also notifies the appropriate model listeners.
053            *
054            * @param journalArticleResource the journal article resource
055            * @return the journal article resource that was added
056            */
057            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
058            public com.liferay.portlet.journal.model.JournalArticleResource addJournalArticleResource(
059                    com.liferay.portlet.journal.model.JournalArticleResource journalArticleResource);
060    
061            /**
062            * Creates a new journal article resource with the primary key. Does not add the journal article resource to the database.
063            *
064            * @param resourcePrimKey the primary key for the new journal article resource
065            * @return the new journal article resource
066            */
067            public com.liferay.portlet.journal.model.JournalArticleResource createJournalArticleResource(
068                    long resourcePrimKey);
069    
070            public void deleteArticleResource(long groupId, java.lang.String articleId)
071                    throws com.liferay.portal.kernel.exception.PortalException;
072    
073            /**
074            * Deletes the journal article resource from the database. Also notifies the appropriate model listeners.
075            *
076            * @param journalArticleResource the journal article resource
077            * @return the journal article resource that was removed
078            */
079            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
080            public com.liferay.portlet.journal.model.JournalArticleResource deleteJournalArticleResource(
081                    com.liferay.portlet.journal.model.JournalArticleResource journalArticleResource);
082    
083            /**
084            * Deletes the journal article resource with the primary key from the database. Also notifies the appropriate model listeners.
085            *
086            * @param resourcePrimKey the primary key of the journal article resource
087            * @return the journal article resource that was removed
088            * @throws PortalException if a journal article resource with the primary key could not be found
089            */
090            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
091            public com.liferay.portlet.journal.model.JournalArticleResource deleteJournalArticleResource(
092                    long resourcePrimKey)
093                    throws com.liferay.portal.kernel.exception.PortalException;
094    
095            /**
096            * @throws PortalException
097            */
098            @Override
099            public com.liferay.portal.model.PersistedModel deletePersistedModel(
100                    com.liferay.portal.model.PersistedModel persistedModel)
101                    throws com.liferay.portal.kernel.exception.PortalException;
102    
103            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
104    
105            /**
106            * Performs a dynamic query on the database and returns the matching rows.
107            *
108            * @param dynamicQuery the dynamic query
109            * @return the matching rows
110            */
111            public <T> java.util.List<T> dynamicQuery(
112                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery);
113    
114            /**
115            * Performs a dynamic query on the database and returns a range of the matching rows.
116            *
117            * <p>
118            * 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.JournalArticleResourceModelImpl}. 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.
119            * </p>
120            *
121            * @param dynamicQuery the dynamic query
122            * @param start the lower bound of the range of model instances
123            * @param end the upper bound of the range of model instances (not inclusive)
124            * @return the range of matching rows
125            */
126            public <T> java.util.List<T> dynamicQuery(
127                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
128                    int end);
129    
130            /**
131            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
132            *
133            * <p>
134            * 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.JournalArticleResourceModelImpl}. 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.
135            * </p>
136            *
137            * @param dynamicQuery the dynamic query
138            * @param start the lower bound of the range of model instances
139            * @param end the upper bound of the range of model instances (not inclusive)
140            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
141            * @return the ordered range of matching rows
142            */
143            public <T> java.util.List<T> dynamicQuery(
144                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
145                    int end,
146                    com.liferay.portal.kernel.util.OrderByComparator<T> orderByComparator);
147    
148            /**
149            * Returns the number of rows matching the dynamic query.
150            *
151            * @param dynamicQuery the dynamic query
152            * @return the number of rows matching the dynamic query
153            */
154            public long dynamicQueryCount(
155                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery);
156    
157            /**
158            * Returns the number of rows matching the dynamic query.
159            *
160            * @param dynamicQuery the dynamic query
161            * @param projection the projection to apply to the query
162            * @return the number of rows matching the dynamic query
163            */
164            public long dynamicQueryCount(
165                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery,
166                    com.liferay.portal.kernel.dao.orm.Projection projection);
167    
168            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
169            public com.liferay.portlet.journal.model.JournalArticleResource fetchArticleResource(
170                    long groupId, java.lang.String articleId);
171    
172            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
173            public com.liferay.portlet.journal.model.JournalArticleResource fetchArticleResource(
174                    java.lang.String uuid, long groupId);
175    
176            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
177            public com.liferay.portlet.journal.model.JournalArticleResource fetchJournalArticleResource(
178                    long resourcePrimKey);
179    
180            /**
181            * Returns the journal article resource matching the UUID and group.
182            *
183            * @param uuid the journal article resource's UUID
184            * @param groupId the primary key of the group
185            * @return the matching journal article resource, or <code>null</code> if a matching journal article resource could not be found
186            */
187            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
188            public com.liferay.portlet.journal.model.JournalArticleResource fetchJournalArticleResourceByUuidAndGroupId(
189                    java.lang.String uuid, long groupId);
190    
191            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
192            public com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery getActionableDynamicQuery();
193    
194            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
195            public com.liferay.portlet.journal.model.JournalArticleResource getArticleResource(
196                    long articleResourcePrimKey)
197                    throws com.liferay.portal.kernel.exception.PortalException;
198    
199            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
200            public long getArticleResourcePrimKey(long groupId,
201                    java.lang.String articleId);
202    
203            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
204            public long getArticleResourcePrimKey(java.lang.String uuid, long groupId,
205                    java.lang.String articleId);
206    
207            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
208            public java.util.List<com.liferay.portlet.journal.model.JournalArticleResource> getArticleResources(
209                    long groupId);
210    
211            /**
212            * Returns the Spring bean ID for this bean.
213            *
214            * @return the Spring bean ID for this bean
215            */
216            public java.lang.String getBeanIdentifier();
217    
218            /**
219            * Returns the journal article resource with the primary key.
220            *
221            * @param resourcePrimKey the primary key of the journal article resource
222            * @return the journal article resource
223            * @throws PortalException if a journal article resource with the primary key could not be found
224            */
225            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
226            public com.liferay.portlet.journal.model.JournalArticleResource getJournalArticleResource(
227                    long resourcePrimKey)
228                    throws com.liferay.portal.kernel.exception.PortalException;
229    
230            /**
231            * Returns the journal article resource matching the UUID and group.
232            *
233            * @param uuid the journal article resource's UUID
234            * @param groupId the primary key of the group
235            * @return the matching journal article resource
236            * @throws PortalException if a matching journal article resource could not be found
237            */
238            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
239            public com.liferay.portlet.journal.model.JournalArticleResource getJournalArticleResourceByUuidAndGroupId(
240                    java.lang.String uuid, long groupId)
241                    throws com.liferay.portal.kernel.exception.PortalException;
242    
243            /**
244            * Returns a range of all the journal article resources.
245            *
246            * <p>
247            * 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.JournalArticleResourceModelImpl}. 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.
248            * </p>
249            *
250            * @param start the lower bound of the range of journal article resources
251            * @param end the upper bound of the range of journal article resources (not inclusive)
252            * @return the range of journal article resources
253            */
254            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
255            public java.util.List<com.liferay.portlet.journal.model.JournalArticleResource> getJournalArticleResources(
256                    int start, int end);
257    
258            /**
259            * Returns the number of journal article resources.
260            *
261            * @return the number of journal article resources
262            */
263            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
264            public int getJournalArticleResourcesCount();
265    
266            @Override
267            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
268            public com.liferay.portal.model.PersistedModel getPersistedModel(
269                    java.io.Serializable primaryKeyObj)
270                    throws com.liferay.portal.kernel.exception.PortalException;
271    
272            /**
273            * Sets the Spring bean ID for this bean.
274            *
275            * @param beanIdentifier the Spring bean ID for this bean
276            */
277            public void setBeanIdentifier(java.lang.String beanIdentifier);
278    
279            /**
280            * Updates the journal article resource in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
281            *
282            * @param journalArticleResource the journal article resource
283            * @return the journal article resource that was updated
284            */
285            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
286            public com.liferay.portlet.journal.model.JournalArticleResource updateJournalArticleResource(
287                    com.liferay.portlet.journal.model.JournalArticleResource journalArticleResource);
288    }