001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.trash.service;
016    
017    import com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.transaction.Isolation;
020    import com.liferay.portal.kernel.transaction.Propagation;
021    import com.liferay.portal.kernel.transaction.Transactional;
022    import com.liferay.portal.service.BaseLocalService;
023    import com.liferay.portal.service.PersistedModelLocalService;
024    
025    /**
026     * The interface for the trash entry local service.
027     *
028     * <p>
029     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
030     * </p>
031     *
032     * @author Brian Wing Shun Chan
033     * @see TrashEntryLocalServiceUtil
034     * @see com.liferay.portlet.trash.service.base.TrashEntryLocalServiceBaseImpl
035     * @see com.liferay.portlet.trash.service.impl.TrashEntryLocalServiceImpl
036     * @generated
037     */
038    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
039            PortalException.class, SystemException.class})
040    public interface TrashEntryLocalService extends BaseLocalService,
041            PersistedModelLocalService {
042            /*
043             * NOTE FOR DEVELOPERS:
044             *
045             * Never modify or reference this interface directly. Always use {@link TrashEntryLocalServiceUtil} to access the trash entry local service. Add custom service methods to {@link com.liferay.portlet.trash.service.impl.TrashEntryLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
046             */
047    
048            /**
049            * Adds the trash entry to the database. Also notifies the appropriate model listeners.
050            *
051            * @param trashEntry the trash entry
052            * @return the trash entry that was added
053            * @throws SystemException if a system exception occurred
054            */
055            public com.liferay.portlet.trash.model.TrashEntry addTrashEntry(
056                    com.liferay.portlet.trash.model.TrashEntry trashEntry)
057                    throws com.liferay.portal.kernel.exception.SystemException;
058    
059            /**
060            * Creates a new trash entry with the primary key. Does not add the trash entry to the database.
061            *
062            * @param entryId the primary key for the new trash entry
063            * @return the new trash entry
064            */
065            public com.liferay.portlet.trash.model.TrashEntry createTrashEntry(
066                    long entryId);
067    
068            /**
069            * Deletes the trash entry with the primary key from the database. Also notifies the appropriate model listeners.
070            *
071            * @param entryId the primary key of the trash entry
072            * @return the trash entry that was removed
073            * @throws PortalException if a trash entry with the primary key could not be found
074            * @throws SystemException if a system exception occurred
075            */
076            public com.liferay.portlet.trash.model.TrashEntry deleteTrashEntry(
077                    long entryId)
078                    throws com.liferay.portal.kernel.exception.PortalException,
079                            com.liferay.portal.kernel.exception.SystemException;
080    
081            /**
082            * Deletes the trash entry from the database. Also notifies the appropriate model listeners.
083            *
084            * @param trashEntry the trash entry
085            * @return the trash entry that was removed
086            * @throws SystemException if a system exception occurred
087            */
088            public com.liferay.portlet.trash.model.TrashEntry deleteTrashEntry(
089                    com.liferay.portlet.trash.model.TrashEntry trashEntry)
090                    throws com.liferay.portal.kernel.exception.SystemException;
091    
092            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
093    
094            /**
095            * Performs a dynamic query on the database and returns the matching rows.
096            *
097            * @param dynamicQuery the dynamic query
098            * @return the matching rows
099            * @throws SystemException if a system exception occurred
100            */
101            @SuppressWarnings("rawtypes")
102            public java.util.List dynamicQuery(
103                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
104                    throws com.liferay.portal.kernel.exception.SystemException;
105    
106            /**
107            * Performs a dynamic query on the database and returns a range of the matching rows.
108            *
109            * <p>
110            * 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.trash.model.impl.TrashEntryModelImpl}. 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.
111            * </p>
112            *
113            * @param dynamicQuery the dynamic query
114            * @param start the lower bound of the range of model instances
115            * @param end the upper bound of the range of model instances (not inclusive)
116            * @return the range of matching rows
117            * @throws SystemException if a system exception occurred
118            */
119            @SuppressWarnings("rawtypes")
120            public java.util.List dynamicQuery(
121                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
122                    int end) throws com.liferay.portal.kernel.exception.SystemException;
123    
124            /**
125            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
126            *
127            * <p>
128            * 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.trash.model.impl.TrashEntryModelImpl}. 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.
129            * </p>
130            *
131            * @param dynamicQuery the dynamic query
132            * @param start the lower bound of the range of model instances
133            * @param end the upper bound of the range of model instances (not inclusive)
134            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
135            * @return the ordered range of matching rows
136            * @throws SystemException if a system exception occurred
137            */
138            @SuppressWarnings("rawtypes")
139            public java.util.List dynamicQuery(
140                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
141                    int end,
142                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
143                    throws com.liferay.portal.kernel.exception.SystemException;
144    
145            /**
146            * Returns the number of rows that match the dynamic query.
147            *
148            * @param dynamicQuery the dynamic query
149            * @return the number of rows that match the dynamic query
150            * @throws SystemException if a system exception occurred
151            */
152            public long dynamicQueryCount(
153                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
154                    throws com.liferay.portal.kernel.exception.SystemException;
155    
156            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
157            public com.liferay.portlet.trash.model.TrashEntry fetchTrashEntry(
158                    long entryId)
159                    throws com.liferay.portal.kernel.exception.SystemException;
160    
161            /**
162            * Returns the trash entry with the primary key.
163            *
164            * @param entryId the primary key of the trash entry
165            * @return the trash entry
166            * @throws PortalException if a trash entry with the primary key could not be found
167            * @throws SystemException if a system exception occurred
168            */
169            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
170            public com.liferay.portlet.trash.model.TrashEntry getTrashEntry(
171                    long entryId)
172                    throws com.liferay.portal.kernel.exception.PortalException,
173                            com.liferay.portal.kernel.exception.SystemException;
174    
175            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
176            public com.liferay.portal.model.PersistedModel getPersistedModel(
177                    java.io.Serializable primaryKeyObj)
178                    throws com.liferay.portal.kernel.exception.PortalException,
179                            com.liferay.portal.kernel.exception.SystemException;
180    
181            /**
182            * Returns a range of all the trash entries.
183            *
184            * <p>
185            * 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.trash.model.impl.TrashEntryModelImpl}. 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.
186            * </p>
187            *
188            * @param start the lower bound of the range of trash entries
189            * @param end the upper bound of the range of trash entries (not inclusive)
190            * @return the range of trash entries
191            * @throws SystemException if a system exception occurred
192            */
193            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
194            public java.util.List<com.liferay.portlet.trash.model.TrashEntry> getTrashEntries(
195                    int start, int end)
196                    throws com.liferay.portal.kernel.exception.SystemException;
197    
198            /**
199            * Returns the number of trash entries.
200            *
201            * @return the number of trash entries
202            * @throws SystemException if a system exception occurred
203            */
204            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
205            public int getTrashEntriesCount()
206                    throws com.liferay.portal.kernel.exception.SystemException;
207    
208            /**
209            * Updates the trash entry in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
210            *
211            * @param trashEntry the trash entry
212            * @return the trash entry that was updated
213            * @throws SystemException if a system exception occurred
214            */
215            public com.liferay.portlet.trash.model.TrashEntry updateTrashEntry(
216                    com.liferay.portlet.trash.model.TrashEntry trashEntry)
217                    throws com.liferay.portal.kernel.exception.SystemException;
218    
219            /**
220            * Returns the Spring bean ID for this bean.
221            *
222            * @return the Spring bean ID for this bean
223            */
224            public java.lang.String getBeanIdentifier();
225    
226            /**
227            * Sets the Spring bean ID for this bean.
228            *
229            * @param beanIdentifier the Spring bean ID for this bean
230            */
231            public void setBeanIdentifier(java.lang.String beanIdentifier);
232    
233            /**
234            * Moves an entry to trash.
235            *
236            * @param userId the primary key of the user removing the entity
237            * @param groupId the primary key of the entry's group
238            * @param className the class name of the entity
239            * @param classPK the primary key of the entity
240            * @param status the status of the entity prior to being moved to trash
241            * @param statusOVPs the primary keys and statuses of any of the entry's
242            versions (e.g., {@link
243            com.liferay.portlet.documentlibrary.model.DLFileVersion})
244            * @param typeSettingsProperties the type settings properties
245            * @return the trashEntry
246            * @throws PortalException if a user with the primary key could not be found
247            * @throws SystemException if a system exception occurred
248            */
249            public com.liferay.portlet.trash.model.TrashEntry addTrashEntry(
250                    long userId, long groupId, java.lang.String className, long classPK,
251                    int status,
252                    java.util.List<com.liferay.portal.kernel.util.ObjectValuePair<java.lang.Long, java.lang.Integer>> statusOVPs,
253                    com.liferay.portal.kernel.util.UnicodeProperties typeSettingsProperties)
254                    throws com.liferay.portal.kernel.exception.PortalException,
255                            com.liferay.portal.kernel.exception.SystemException;
256    
257            public void checkEntries()
258                    throws com.liferay.portal.kernel.exception.PortalException,
259                            com.liferay.portal.kernel.exception.SystemException;
260    
261            /**
262            * Deletes the trash entry with the primary key.
263            *
264            * @param entryId the primary key of the trash entry
265            * @throws PortalException if a trash entry with the primary key could not
266            be found
267            * @throws SystemException if a system exception occurred
268            */
269            public com.liferay.portlet.trash.model.TrashEntry deleteEntry(long entryId)
270                    throws com.liferay.portal.kernel.exception.PortalException,
271                            com.liferay.portal.kernel.exception.SystemException;
272    
273            /**
274            * Deletes the trash entry with the entity class name and primary key.
275            *
276            * @param className the class name of entity
277            * @param classPK the primary key of the entry
278            * @throws PortalException if a trash entry with the primary key could not
279            be found
280            * @throws SystemException if a system exception occurred
281            */
282            public com.liferay.portlet.trash.model.TrashEntry deleteEntry(
283                    java.lang.String className, long classPK)
284                    throws com.liferay.portal.kernel.exception.PortalException,
285                            com.liferay.portal.kernel.exception.SystemException;
286    
287            public com.liferay.portlet.trash.model.TrashEntry deleteEntry(
288                    com.liferay.portlet.trash.model.TrashEntry trashEntry)
289                    throws com.liferay.portal.kernel.exception.SystemException;
290    
291            /**
292            * Returns the trash entry with the primary key.
293            *
294            * @param entryId the primary key of the entry
295            * @return the trash entry with the primary key
296            * @throws SystemException if a system exception occurred
297            */
298            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
299            public com.liferay.portlet.trash.model.TrashEntry fetchEntry(long entryId)
300                    throws com.liferay.portal.kernel.exception.SystemException;
301    
302            /**
303            * Returns the trash entry with the entity class name and primary key.
304            *
305            * @param className the class name of the entity
306            * @param classPK the primary key of the entity
307            * @return the trash entry with the entity class name and primary key
308            * @throws SystemException if a system exception occurred
309            */
310            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
311            public com.liferay.portlet.trash.model.TrashEntry fetchEntry(
312                    java.lang.String className, long classPK)
313                    throws com.liferay.portal.kernel.exception.SystemException;
314    
315            /**
316            * Returns the trash entries with the matching group ID.
317            *
318            * @param groupId the primary key of the group
319            * @return the trash entries with the group ID
320            * @throws SystemException if a system exception occurred
321            */
322            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
323            public java.util.List<com.liferay.portlet.trash.model.TrashEntry> getEntries(
324                    long groupId)
325                    throws com.liferay.portal.kernel.exception.SystemException;
326    
327            /**
328            * Returns a range of all the trash entries matching the group ID.
329            *
330            * @param groupId the primary key of the group
331            * @param start the lower bound of the range of trash entries to return
332            * @param end the upper bound of the range of trash entries to return (not
333            inclusive)
334            * @return the range of matching trash entries
335            * @throws SystemException if a system exception occurred
336            */
337            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
338            public java.util.List<com.liferay.portlet.trash.model.TrashEntry> getEntries(
339                    long groupId, int start, int end)
340                    throws com.liferay.portal.kernel.exception.SystemException;
341    
342            /**
343            * Returns a range of all the trash entries matching the group ID.
344            *
345            * @param groupId the primary key of the group
346            * @param start the lower bound of the range of trash entries to return
347            * @param end the upper bound of the range of trash entries to return (not
348            inclusive)
349            * @param obc the comparator to order the trash entries (optionally
350            <code>null</code>)
351            * @return the range of matching trash entries ordered by comparator
352            <code>obc</code>
353            * @throws SystemException if a system exception occurred
354            */
355            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
356            public java.util.List<com.liferay.portlet.trash.model.TrashEntry> getEntries(
357                    long groupId, int start, int end,
358                    com.liferay.portal.kernel.util.OrderByComparator obc)
359                    throws com.liferay.portal.kernel.exception.SystemException;
360    
361            /**
362            * Returns the number of trash entries with the group ID.
363            *
364            * @param groupId the primary key of the group
365            * @return the number of matching trash entries
366            * @throws SystemException if a system exception occurred
367            */
368            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
369            public int getEntriesCount(long groupId)
370                    throws com.liferay.portal.kernel.exception.SystemException;
371    
372            /**
373            * Returns the trash entry with the primary key.
374            *
375            * @param entryId the primary key of the trash entry
376            * @return the trash entry with the primary key
377            * @throws PortalException if a trash entry with the primary key could not
378            be found
379            * @throws SystemException if a system exception occurred
380            */
381            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
382            public com.liferay.portlet.trash.model.TrashEntry getEntry(long entryId)
383                    throws com.liferay.portal.kernel.exception.PortalException,
384                            com.liferay.portal.kernel.exception.SystemException;
385    
386            /**
387            * Returns the entry with the entity class name and primary key.
388            *
389            * @param className the class name of the entity
390            * @param classPK the primary key of the entity
391            * @return the trash entry with the entity class name and primary key
392            * @throws PortalException if a trash entry with the primary key could not
393            be found
394            * @throws SystemException if a system exception occurred
395            */
396            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
397            public com.liferay.portlet.trash.model.TrashEntry getEntry(
398                    java.lang.String className, long classPK)
399                    throws com.liferay.portal.kernel.exception.PortalException,
400                            com.liferay.portal.kernel.exception.SystemException;
401    
402            /**
403            * Returns all the trash versions associated with the trash entry.
404            *
405            * @param entryId the primary key of the trash entry
406            * @return all the trash versions associated with the trash entry
407            * @throws SystemException if a system exception occurred
408            */
409            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
410            public java.util.List<com.liferay.portlet.trash.model.TrashVersion> getVersions(
411                    long entryId)
412                    throws com.liferay.portal.kernel.exception.SystemException;
413    
414            /**
415            * Returns all the trash versions associated with the trash entry.
416            *
417            * @param className the class name of the trash entity
418            * @param classPK the primary key of the trash entity
419            * @return all the trash versions associated with the trash entry
420            * @throws SystemException if a system exception occurred
421            */
422            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
423            public java.util.List<com.liferay.portlet.trash.model.TrashVersion> getVersions(
424                    java.lang.String className, long classPK)
425                    throws com.liferay.portal.kernel.exception.SystemException;
426    
427            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
428            public com.liferay.portal.kernel.search.Hits search(long companyId,
429                    long groupId, long userId, java.lang.String keywords, int start,
430                    int end, com.liferay.portal.kernel.search.Sort sort)
431                    throws com.liferay.portal.kernel.exception.SystemException;
432    }