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.documentlibrary.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
022    import com.liferay.portal.kernel.transaction.Isolation;
023    import com.liferay.portal.kernel.transaction.Propagation;
024    import com.liferay.portal.kernel.transaction.Transactional;
025    import com.liferay.portal.security.ac.AccessControlled;
026    import com.liferay.portal.service.BaseService;
027    
028    /**
029     * Provides the remote service interface for DLApp. Methods of this
030     * service are expected to have security checks based on the propagated JAAS
031     * credentials because this service can be accessed remotely.
032     *
033     * @author Brian Wing Shun Chan
034     * @see DLAppServiceUtil
035     * @see com.liferay.portlet.documentlibrary.service.base.DLAppServiceBaseImpl
036     * @see com.liferay.portlet.documentlibrary.service.impl.DLAppServiceImpl
037     * @generated
038     */
039    @ProviderType
040    @AccessControlled
041    @JSONWebService
042    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
043            PortalException.class, SystemException.class})
044    public interface DLAppService extends BaseService {
045            /*
046             * NOTE FOR DEVELOPERS:
047             *
048             * Never modify or reference this interface directly. Always use {@link DLAppServiceUtil} to access the d l app remote service. Add custom service methods to {@link com.liferay.portlet.documentlibrary.service.impl.DLAppServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
049             */
050    
051            /**
052            * Returns the Spring bean ID for this bean.
053            *
054            * @return the Spring bean ID for this bean
055            */
056            public java.lang.String getBeanIdentifier();
057    
058            /**
059            * Sets the Spring bean ID for this bean.
060            *
061            * @param beanIdentifier the Spring bean ID for this bean
062            */
063            public void setBeanIdentifier(java.lang.String beanIdentifier);
064    
065            /**
066            * Adds a file entry and associated metadata. It is created based on a byte
067            * array.
068            *
069            * <p>
070            * This method takes two file names, the <code>sourceFileName</code> and the
071            * <code>title</code>. The <code>sourceFileName</code> corresponds to the
072            * name of the actual file being uploaded. The <code>title</code>
073            * corresponds to a name the client wishes to assign this file after it has
074            * been uploaded to the portal. If it is <code>null</code>, the <code>
075            * sourceFileName</code> will be used.
076            * </p>
077            *
078            * @param repositoryId the primary key of the repository
079            * @param folderId the primary key of the file entry's parent folder
080            * @param sourceFileName the original file's name
081            * @param mimeType the file's MIME type
082            * @param title the name to be assigned to the file (optionally <code>null
083            </code>)
084            * @param description the file's description
085            * @param changeLog the file's version change log
086            * @param bytes the file's data (optionally <code>null</code>)
087            * @param serviceContext the service context to be applied. Can set the
088            asset category IDs, asset tag names, and expando bridge
089            attributes for the file entry. In a Liferay repository, it may
090            include:  <ul> <li> fileEntryTypeId - ID for a custom file entry
091            type </li> <li> fieldsMap - mapping for fields associated with a
092            custom file entry type </li> </ul>
093            * @return the file entry
094            * @throws PortalException if the parent folder could not be found or if the
095            file entry's information was invalid
096            * @throws SystemException if a system exception occurred
097            */
098            public com.liferay.portal.kernel.repository.model.FileEntry addFileEntry(
099                    long repositoryId, long folderId, java.lang.String sourceFileName,
100                    java.lang.String mimeType, java.lang.String title,
101                    java.lang.String description, java.lang.String changeLog, byte[] bytes,
102                    com.liferay.portal.service.ServiceContext serviceContext)
103                    throws com.liferay.portal.kernel.exception.PortalException,
104                            com.liferay.portal.kernel.exception.SystemException;
105    
106            /**
107            * Adds a file entry and associated metadata. It is created based on a
108            * {@link java.io.File} object.
109            *
110            * <p>
111            * This method takes two file names, the <code>sourceFileName</code> and the
112            * <code>title</code>. The <code>sourceFileName</code> corresponds to the
113            * name of the actual file being uploaded. The <code>title</code>
114            * corresponds to a name the client wishes to assign this file after it has
115            * been uploaded to the portal. If it is <code>null</code>, the <code>
116            * sourceFileName</code> will be used.
117            * </p>
118            *
119            * @param repositoryId the primary key of the repository
120            * @param folderId the primary key of the file entry's parent folder
121            * @param sourceFileName the original file's name
122            * @param mimeType the file's MIME type
123            * @param title the name to be assigned to the file (optionally <code>null
124            </code>)
125            * @param description the file's description
126            * @param changeLog the file's version change log
127            * @param file the file's data (optionally <code>null</code>)
128            * @param serviceContext the service context to be applied. Can set the
129            asset category IDs, asset tag names, and expando bridge
130            attributes for the file entry. In a Liferay repository, it may
131            include:  <ul> <li> fileEntryTypeId - ID for a custom file entry
132            type </li> <li> fieldsMap - mapping for fields associated with a
133            custom file entry type </li> </ul>
134            * @return the file entry
135            * @throws PortalException if the parent folder could not be found or if the
136            file entry's information was invalid
137            * @throws SystemException if a system exception occurred
138            */
139            public com.liferay.portal.kernel.repository.model.FileEntry addFileEntry(
140                    long repositoryId, long folderId, java.lang.String sourceFileName,
141                    java.lang.String mimeType, java.lang.String title,
142                    java.lang.String description, java.lang.String changeLog,
143                    java.io.File file,
144                    com.liferay.portal.service.ServiceContext serviceContext)
145                    throws com.liferay.portal.kernel.exception.PortalException,
146                            com.liferay.portal.kernel.exception.SystemException;
147    
148            /**
149            * Adds a file entry and associated metadata. It is created based on a
150            * {@link InputStream} object.
151            *
152            * <p>
153            * This method takes two file names, the <code>sourceFileName</code> and the
154            * <code>title</code>. The <code>sourceFileName</code> corresponds to the
155            * name of the actual file being uploaded. The <code>title</code>
156            * corresponds to a name the client wishes to assign this file after it has
157            * been uploaded to the portal. If it is <code>null</code>, the <code>
158            * sourceFileName</code> will be used.
159            * </p>
160            *
161            * @param repositoryId the primary key of the repository
162            * @param folderId the primary key of the file entry's parent folder
163            * @param sourceFileName the original file's name
164            * @param mimeType the file's MIME type
165            * @param title the name to be assigned to the file (optionally <code>null
166            </code>)
167            * @param description the file's description
168            * @param changeLog the file's version change log
169            * @param is the file's data (optionally <code>null</code>)
170            * @param size the file's size (optionally <code>0</code>)
171            * @param serviceContext the service context to be applied. Can set the
172            asset category IDs, asset tag names, and expando bridge
173            attributes for the file entry. In a Liferay repository, it may
174            include:  <ul> <li> fileEntryTypeId - ID for a custom file entry
175            type </li> <li> fieldsMap - mapping for fields associated with a
176            custom file entry type </li> </ul>
177            * @return the file entry
178            * @throws PortalException if the parent folder could not be found or if the
179            file entry's information was invalid
180            * @throws SystemException if a system exception occurred
181            */
182            public com.liferay.portal.kernel.repository.model.FileEntry addFileEntry(
183                    long repositoryId, long folderId, java.lang.String sourceFileName,
184                    java.lang.String mimeType, java.lang.String title,
185                    java.lang.String description, java.lang.String changeLog,
186                    java.io.InputStream is, long size,
187                    com.liferay.portal.service.ServiceContext serviceContext)
188                    throws com.liferay.portal.kernel.exception.PortalException,
189                            com.liferay.portal.kernel.exception.SystemException;
190    
191            /**
192            * Adds a file shortcut to the existing file entry. This method is only
193            * supported by the Liferay repository.
194            *
195            * @param repositoryId the primary key of the repository
196            * @param folderId the primary key of the file shortcut's parent folder
197            * @param toFileEntryId the primary key of the file shortcut's file entry
198            * @param serviceContext the service context to be applied. Can set the
199            asset category IDs, asset tag names, and expando bridge
200            attributes for the file entry.
201            * @return the file shortcut
202            * @throws PortalException if the parent folder or file entry could not be
203            found, or if the file shortcut's information was invalid
204            * @throws SystemException if a system exception occurred
205            */
206            public com.liferay.portlet.documentlibrary.model.DLFileShortcut addFileShortcut(
207                    long repositoryId, long folderId, long toFileEntryId,
208                    com.liferay.portal.service.ServiceContext serviceContext)
209                    throws com.liferay.portal.kernel.exception.PortalException,
210                            com.liferay.portal.kernel.exception.SystemException;
211    
212            /**
213            * Adds a folder.
214            *
215            * @param repositoryId the primary key of the repository
216            * @param parentFolderId the primary key of the folder's parent folder
217            * @param name the folder's name
218            * @param description the folder's description
219            * @param serviceContext the service context to be applied. In a Liferay
220            repository, it may include boolean mountPoint specifying whether
221            folder is a facade for mounting a third-party repository
222            * @return the folder
223            * @throws PortalException if the parent folder could not be found or if the
224            new folder's information was invalid
225            * @throws SystemException if a system exception occurred
226            */
227            public com.liferay.portal.kernel.repository.model.Folder addFolder(
228                    long repositoryId, long parentFolderId, java.lang.String name,
229                    java.lang.String description,
230                    com.liferay.portal.service.ServiceContext serviceContext)
231                    throws com.liferay.portal.kernel.exception.PortalException,
232                            com.liferay.portal.kernel.exception.SystemException;
233    
234            /**
235            * Adds a temporary file entry.
236            *
237            * <p>
238            * This allows a client to upload a file into a temporary location and
239            * manipulate its metadata prior to making it available for public usage.
240            * This is different from checking in and checking out a file entry.
241            * </p>
242            *
243            * @param groupId the primary key of the group
244            * @param folderId the primary key of the folder where the file entry will
245            eventually reside
246            * @param fileName the file's original name
247            * @param tempFolderName the temporary folder's name
248            * @param file the file's data (optionally <code>null</code>)
249            * @param mimeType the file's MIME type
250            * @return the temporary file entry
251            * @throws PortalException if the file name was invalid
252            * @throws SystemException if a system exception occurred
253            * @see com.liferay.portal.kernel.util.TempFileUtil
254            */
255            public com.liferay.portal.kernel.repository.model.FileEntry addTempFileEntry(
256                    long groupId, long folderId, java.lang.String fileName,
257                    java.lang.String tempFolderName, java.io.File file,
258                    java.lang.String mimeType)
259                    throws com.liferay.portal.kernel.exception.PortalException,
260                            com.liferay.portal.kernel.exception.SystemException;
261    
262            /**
263            * Adds a temporary file entry. It is created based on the {@link
264            * InputStream} object.
265            *
266            * <p>
267            * This allows a client to upload a file into a temporary location and
268            * manipulate its metadata prior to making it available for public usage.
269            * This is different from checking in and checking out a file entry.
270            * </p>
271            *
272            * @param groupId the primary key of the group
273            * @param folderId the primary key of the folder where the file entry will
274            eventually reside
275            * @param fileName the file's original name
276            * @param tempFolderName the temporary folder's name
277            * @param inputStream the file's data
278            * @param mimeType the file's MIME type
279            * @return the temporary file entry
280            * @throws PortalException if the file name was invalid or if a portal
281            exception occurred
282            * @throws SystemException if a system exception occurred
283            * @see com.liferay.portal.kernel.util.TempFileUtil
284            */
285            public com.liferay.portal.kernel.repository.model.FileEntry addTempFileEntry(
286                    long groupId, long folderId, java.lang.String fileName,
287                    java.lang.String tempFolderName, java.io.InputStream inputStream,
288                    java.lang.String mimeType)
289                    throws com.liferay.portal.kernel.exception.PortalException,
290                            com.liferay.portal.kernel.exception.SystemException;
291    
292            /**
293            * Cancels the check out of the file entry. If a user has not checked out
294            * the specified file entry, invoking this method will result in no changes.
295            *
296            * <p>
297            * When a file entry is checked out, a PWC (private working copy) is created
298            * and the original file entry is locked. A client can make as many changes
299            * to the PWC as he desires without those changes being visible to other
300            * users. If the user is satisfied with the changes, he may elect to check
301            * in his changes, resulting in a new file version based on the PWC; the PWC
302            * will be removed and the file entry will be unlocked. If the user is not
303            * satisfied with the changes, he may elect to cancel his check out; this
304            * results in the deletion of the PWC and unlocking of the file entry.
305            * </p>
306            *
307            * @param fileEntryId the primary key of the file entry to cancel the
308            checkout
309            * @throws PortalException if the file entry could not be found
310            * @throws SystemException if a system exception occurred
311            * @see #checkInFileEntry(long, boolean, String, ServiceContext)
312            * @see #checkOutFileEntry(long, ServiceContext)
313            */
314            public void cancelCheckOut(long fileEntryId)
315                    throws com.liferay.portal.kernel.exception.PortalException,
316                            com.liferay.portal.kernel.exception.SystemException;
317    
318            /**
319            * Checks in the file entry. If a user has not checked out the specified
320            * file entry, invoking this method will result in no changes.
321            *
322            * <p>
323            * When a file entry is checked out, a PWC (private working copy) is created
324            * and the original file entry is locked. A client can make as many changes
325            * to the PWC as he desires without those changes being visible to other
326            * users. If the user is satisfied with the changes, he may elect to check
327            * in his changes, resulting in a new file version based on the PWC; the PWC
328            * will be removed and the file entry will be unlocked. If the user is not
329            * satisfied with the changes, he may elect to cancel his check out; this
330            * results in the deletion of the PWC and unlocking of the file entry.
331            * </p>
332            *
333            * @param fileEntryId the primary key of the file entry to check in
334            * @param majorVersion whether the new file version is a major version
335            * @param changeLog the file's version change log
336            * @param serviceContext the service context to be applied
337            * @throws PortalException if the file entry could not be found
338            * @throws SystemException if a system exception occurred
339            * @see #cancelCheckOut(long)
340            * @see #checkOutFileEntry(long, ServiceContext)
341            */
342            public void checkInFileEntry(long fileEntryId, boolean majorVersion,
343                    java.lang.String changeLog,
344                    com.liferay.portal.service.ServiceContext serviceContext)
345                    throws com.liferay.portal.kernel.exception.PortalException,
346                            com.liferay.portal.kernel.exception.SystemException;
347    
348            /**
349            * @deprecated As of 6.2.0, replaced by {@link #checkInFileEntry(long,
350            String, ServiceContext)}
351            */
352            public void checkInFileEntry(long fileEntryId, java.lang.String lockUuid)
353                    throws com.liferay.portal.kernel.exception.PortalException,
354                            com.liferay.portal.kernel.exception.SystemException;
355    
356            /**
357            * Checks in the file entry using the lock's UUID. If a user has not checked
358            * out the specified file entry, invoking this method will result in no
359            * changes. This method is primarily used by WebDAV.
360            *
361            * <p>
362            * When a file entry is checked out, a PWC (private working copy) is created
363            * and the original file entry is locked. A client can make as many changes
364            * to the PWC as he desires without those changes being visible to other
365            * users. If the user is satisfied with the changes, he may elect to check
366            * in his changes, resulting in a new file version based on the PWC; the PWC
367            * will be removed and the file entry will be unlocked. If the user is not
368            * satisfied with the changes, he may elect to cancel his check out; this
369            * results in the deletion of the PWC and unlocking of the file entry.
370            * </p>
371            *
372            * @param fileEntryId the primary key of the file entry to check in
373            * @param lockUuid the lock's UUID
374            * @param serviceContext the service context to be applied
375            * @throws PortalException if the file entry could not be found
376            * @throws SystemException if a system exception occurred
377            * @see #cancelCheckOut(long)
378            * @see #checkOutFileEntry(long, String, long, ServiceContext)
379            */
380            public void checkInFileEntry(long fileEntryId, java.lang.String lockUuid,
381                    com.liferay.portal.service.ServiceContext serviceContext)
382                    throws com.liferay.portal.kernel.exception.PortalException,
383                            com.liferay.portal.kernel.exception.SystemException;
384    
385            /**
386            * Check out a file entry.
387            *
388            * <p>
389            * When a file entry is checked out, a PWC (private working copy) is created
390            * and the original file entry is locked. A client can make as many changes
391            * to the PWC as he desires without those changes being visible to other
392            * users. If the user is satisfied with the changes, he may elect to check
393            * in his changes, resulting in a new file version based on the PWC; the PWC
394            * will be removed and the file entry will be unlocked. If the user is not
395            * satisfied with the changes, he may elect to cancel his check out; this
396            * results in the deletion of the PWC and unlocking of the file entry.
397            * </p>
398            *
399            * @param fileEntryId the file entry to check out
400            * @param serviceContext the service context to be applied
401            * @throws PortalException if the file entry could not be found
402            * @throws SystemException if a system exception occurred
403            * @see #cancelCheckOut(long)
404            * @see #checkInFileEntry(long, boolean, String, ServiceContext)
405            */
406            public void checkOutFileEntry(long fileEntryId,
407                    com.liferay.portal.service.ServiceContext serviceContext)
408                    throws com.liferay.portal.kernel.exception.PortalException,
409                            com.liferay.portal.kernel.exception.SystemException;
410    
411            /**
412            * Checks out the file entry. This method is primarily used by WebDAV.
413            *
414            * <p>
415            * When a file entry is checked out, a PWC (private working copy) is created
416            * and the original file entry is locked. A client can make as many changes
417            * to the PWC as he desires without those changes being visible to other
418            * users. If the user is satisfied with the changes, he may elect to check
419            * in his changes, resulting in a new file version based on the PWC; the PWC
420            * will be removed and the file entry will be unlocked. If the user is not
421            * satisfied with the changes, he may elect to cancel his check out; this
422            * results in the deletion of the PWC and unlocking of the file entry.
423            * </p>
424            *
425            * @param fileEntryId the file entry to check out
426            * @param owner the owner string for the checkout (optionally
427            <code>null</code>)
428            * @param expirationTime the time in milliseconds before the lock expires.
429            If the value is <code>0</code>, the default expiration time will
430            be used from <code>portal.properties>.
431            * @param serviceContext the service context to be applied
432            * @return the file entry
433            * @throws PortalException if the file entry could not be found
434            * @throws SystemException if a system exception occurred
435            * @see #cancelCheckOut(long)
436            * @see #checkInFileEntry(long, String)
437            */
438            public com.liferay.portal.kernel.repository.model.FileEntry checkOutFileEntry(
439                    long fileEntryId, java.lang.String owner, long expirationTime,
440                    com.liferay.portal.service.ServiceContext serviceContext)
441                    throws com.liferay.portal.kernel.exception.PortalException,
442                            com.liferay.portal.kernel.exception.SystemException;
443    
444            /**
445            * Performs a deep copy of the folder.
446            *
447            * @param repositoryId the primary key of the repository
448            * @param sourceFolderId the primary key of the folder to copy
449            * @param parentFolderId the primary key of the new folder's parent folder
450            * @param name the new folder's name
451            * @param description the new folder's description
452            * @param serviceContext the service context to be applied
453            * @return the folder
454            * @throws PortalException if the source folder or the new parent folder
455            could not be found or if the new folder's information was invalid
456            * @throws SystemException if a system exception occurred
457            */
458            public com.liferay.portal.kernel.repository.model.Folder copyFolder(
459                    long repositoryId, long sourceFolderId, long parentFolderId,
460                    java.lang.String name, java.lang.String description,
461                    com.liferay.portal.service.ServiceContext serviceContext)
462                    throws com.liferay.portal.kernel.exception.PortalException,
463                            com.liferay.portal.kernel.exception.SystemException;
464    
465            /**
466            * Deletes the file entry with the primary key.
467            *
468            * @param fileEntryId the primary key of the file entry
469            * @throws PortalException if the file entry could not be found
470            * @throws SystemException if a system exception occurred
471            */
472            public void deleteFileEntry(long fileEntryId)
473                    throws com.liferay.portal.kernel.exception.PortalException,
474                            com.liferay.portal.kernel.exception.SystemException;
475    
476            /**
477            * Deletes the file entry with the title in the folder.
478            *
479            * @param repositoryId the primary key of the repository
480            * @param folderId the primary key of the file entry's parent folder
481            * @param title the file entry's title
482            * @throws PortalException if the file entry could not be found
483            * @throws SystemException if a system exception occurred
484            */
485            public void deleteFileEntryByTitle(long repositoryId, long folderId,
486                    java.lang.String title)
487                    throws com.liferay.portal.kernel.exception.PortalException,
488                            com.liferay.portal.kernel.exception.SystemException;
489    
490            /**
491            * Deletes the file shortcut with the primary key. This method is only
492            * supported by the Liferay repository.
493            *
494            * @param fileShortcutId the primary key of the file shortcut
495            * @throws PortalException if the file shortcut could not be found
496            * @throws SystemException if a system exception occurred
497            */
498            public void deleteFileShortcut(long fileShortcutId)
499                    throws com.liferay.portal.kernel.exception.PortalException,
500                            com.liferay.portal.kernel.exception.SystemException;
501    
502            /**
503            * Deletes the file version. File versions can only be deleted if it is
504            * approved and there are other approved file versions available. This
505            * method is only supported by the Liferay repository.
506            *
507            * @param fileEntryId the primary key of the file entry
508            * @param version the version label of the file version
509            * @throws PortalException if the file version could not be found or invalid
510            * @throws SystemException if a system exception occurred
511            */
512            public void deleteFileVersion(long fileEntryId, java.lang.String version)
513                    throws com.liferay.portal.kernel.exception.PortalException,
514                            com.liferay.portal.kernel.exception.SystemException;
515    
516            /**
517            * Deletes the folder with the primary key and all of its subfolders and
518            * file entries.
519            *
520            * @param folderId the primary key of the folder
521            * @throws PortalException if the folder could not be found
522            * @throws SystemException if a system exception occurred
523            */
524            public void deleteFolder(long folderId)
525                    throws com.liferay.portal.kernel.exception.PortalException,
526                            com.liferay.portal.kernel.exception.SystemException;
527    
528            /**
529            * Deletes the folder with the name in the parent folder and all of its
530            * subfolders and file entries.
531            *
532            * @param repositoryId the primary key of the repository
533            * @param parentFolderId the primary key of the folder's parent folder
534            * @param name the folder's name
535            * @throws PortalException if the folder could not be found
536            * @throws SystemException if a system exception occurred
537            */
538            public void deleteFolder(long repositoryId, long parentFolderId,
539                    java.lang.String name)
540                    throws com.liferay.portal.kernel.exception.PortalException,
541                            com.liferay.portal.kernel.exception.SystemException;
542    
543            /**
544            * Deletes the temporary file entry.
545            *
546            * @param groupId the primary key of the group
547            * @param folderId the primary key of the folder where the file entry was
548            eventually to reside
549            * @param fileName the file's original name
550            * @param tempFolderName the temporary folder's name
551            * @throws PortalException if the file name was invalid
552            * @throws SystemException if a system exception occurred
553            * @see com.liferay.portal.kernel.util.TempFileUtil
554            */
555            public void deleteTempFileEntry(long groupId, long folderId,
556                    java.lang.String fileName, java.lang.String tempFolderName)
557                    throws com.liferay.portal.kernel.exception.PortalException,
558                            com.liferay.portal.kernel.exception.SystemException;
559    
560            /**
561            * Returns all the file entries in the folder.
562            *
563            * @param repositoryId the primary key of the file entry's repository
564            * @param folderId the primary key of the file entry's folder
565            * @return the file entries in the folder
566            * @throws PortalException if the folder could not be found
567            * @throws SystemException if a system exception occurred
568            */
569            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
570            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
571                    long repositoryId, long folderId)
572                    throws com.liferay.portal.kernel.exception.PortalException,
573                            com.liferay.portal.kernel.exception.SystemException;
574    
575            /**
576            * Returns a name-ordered range of all the file entries in the folder.
577            *
578            * <p>
579            * Useful when paginating results. Returns a maximum of <code>end -
580            * start</code> instances. <code>start</code> and <code>end</code> are not
581            * primary keys, they are indexes in the result set. Thus, <code>0</code>
582            * refers to the first result in the set. Setting both <code>start</code>
583            * and <code>end</code> to {@link
584            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
585            * result set.
586            * </p>
587            *
588            * @param repositoryId the primary key of the file entry's repository
589            * @param folderId the primary key of the file entry's folder
590            * @param start the lower bound of the range of results
591            * @param end the upper bound of the range of results (not inclusive)
592            * @return the name-ordered range of file entries in the folder
593            * @throws PortalException if the folder could not be found
594            * @throws SystemException if a system exception occurred
595            */
596            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
597            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
598                    long repositoryId, long folderId, int start, int end)
599                    throws com.liferay.portal.kernel.exception.PortalException,
600                            com.liferay.portal.kernel.exception.SystemException;
601    
602            /**
603            * Returns an ordered range of all the file entries in the folder.
604            *
605            * <p>
606            * Useful when paginating results. Returns a maximum of <code>end -
607            * start</code> instances. <code>start</code> and <code>end</code> are not
608            * primary keys, they are indexes in the result set. Thus, <code>0</code>
609            * refers to the first result in the set. Setting both <code>start</code>
610            * and <code>end</code> to {@link
611            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
612            * result set.
613            * </p>
614            *
615            * @param repositoryId the primary key of the file entry's repository
616            * @param folderId the primary key of the file entry's folder
617            * @param start the lower bound of the range of results
618            * @param end the upper bound of the range of results (not inclusive)
619            * @param obc the comparator to order the file entries (optionally
620            <code>null</code>)
621            * @return the range of file entries in the folder ordered by comparator
622            <code>obc</code>
623            * @throws PortalException if the folder could not be found
624            * @throws SystemException if a system exception occurred
625            */
626            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
627            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
628                    long repositoryId, long folderId, int start, int end,
629                    com.liferay.portal.kernel.util.OrderByComparator obc)
630                    throws com.liferay.portal.kernel.exception.PortalException,
631                            com.liferay.portal.kernel.exception.SystemException;
632    
633            /**
634            * Returns the file entries with the file entry type in the folder.
635            *
636            * @param repositoryId the primary key of the file entry's repository
637            * @param folderId the primary key of the file entry's folder
638            * @param fileEntryTypeId the primary key of the file entry type
639            * @return the file entries with the file entry type in the folder
640            * @throws PortalException if the folder could not be found
641            * @throws SystemException if a system exception occurred
642            */
643            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
644            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
645                    long repositoryId, long folderId, long fileEntryTypeId)
646                    throws com.liferay.portal.kernel.exception.PortalException,
647                            com.liferay.portal.kernel.exception.SystemException;
648    
649            /**
650            * Returns a name-ordered range of all the file entries with the file entry
651            * type in the folder.
652            *
653            * @param repositoryId the primary key of the file entry's repository
654            * @param folderId the primary key of the file entry's folder
655            * @param fileEntryTypeId the primary key of the file entry type
656            * @param start the lower bound of the range of results
657            * @param end the upper bound of the range of results (not inclusive)
658            * @return the name-ordered range of the file entries in the folder
659            * @throws PortalException if the folder could not be found
660            * @throws SystemException if a system exception occurred
661            */
662            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
663            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
664                    long repositoryId, long folderId, long fileEntryTypeId, int start,
665                    int end)
666                    throws com.liferay.portal.kernel.exception.PortalException,
667                            com.liferay.portal.kernel.exception.SystemException;
668    
669            /**
670            * Returns an ordered range of all the file entries with the file entry type
671            * in the folder.
672            *
673            * @param repositoryId the primary key of the repository
674            * @param folderId the primary key of the folder
675            * @param fileEntryTypeId the primary key of the file entry type
676            * @param start the lower bound of the range of results
677            * @param end the upper bound of the range of results (not inclusive)
678            * @param obc the comparator to order the results by (optionally
679            <code>null</code>)
680            * @return the range of file entries with the file entry type in the folder
681            ordered by <code>null</code>
682            * @throws PortalException if the folder could not be found
683            * @throws SystemException if a system exception occurred
684            */
685            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
686            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
687                    long repositoryId, long folderId, long fileEntryTypeId, int start,
688                    int end, com.liferay.portal.kernel.util.OrderByComparator obc)
689                    throws com.liferay.portal.kernel.exception.PortalException,
690                            com.liferay.portal.kernel.exception.SystemException;
691    
692            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
693            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getFileEntries(
694                    long repositoryId, long folderId, java.lang.String[] mimeTypes)
695                    throws com.liferay.portal.kernel.exception.PortalException,
696                            com.liferay.portal.kernel.exception.SystemException;
697    
698            /**
699            * Returns a range of all the file entries and shortcuts in the folder.
700            *
701            * <p>
702            * Useful when paginating results. Returns a maximum of <code>end -
703            * start</code> instances. <code>start</code> and <code>end</code> are not
704            * primary keys, they are indexes in the result set. Thus, <code>0</code>
705            * refers to the first result in the set. Setting both <code>start</code>
706            * and <code>end</code> to {@link
707            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
708            * result set.
709            * </p>
710            *
711            * @param repositoryId the primary key of the repository
712            * @param folderId the primary key of the folder
713            * @param status the workflow status
714            * @param start the lower bound of the range of results
715            * @param end the upper bound of the range of results (not inclusive)
716            * @return the range of file entries and shortcuts in the folder
717            * @throws PortalException if the folder could not be found
718            * @throws SystemException if a system exception occurred
719            */
720            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
721            public java.util.List<java.lang.Object> getFileEntriesAndFileShortcuts(
722                    long repositoryId, long folderId, int status, int start, int end)
723                    throws com.liferay.portal.kernel.exception.PortalException,
724                            com.liferay.portal.kernel.exception.SystemException;
725    
726            /**
727            * Returns the number of file entries and shortcuts in the folder.
728            *
729            * @param repositoryId the primary key of the repository
730            * @param folderId the primary key of the folder
731            * @param status the workflow status
732            * @return the number of file entries and shortcuts in the folder
733            * @throws PortalException if the folder ould not be found
734            * @throws SystemException if a system exception occurred
735            */
736            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
737            public int getFileEntriesAndFileShortcutsCount(long repositoryId,
738                    long folderId, int status)
739                    throws com.liferay.portal.kernel.exception.PortalException,
740                            com.liferay.portal.kernel.exception.SystemException;
741    
742            /**
743            * Returns the number of file entries and shortcuts in the folder.
744            *
745            * @param repositoryId the primary key of the repository
746            * @param folderId the primary key of the folder
747            * @param status the workflow status
748            * @param mimeTypes allowed media types
749            * @return the number of file entries and shortcuts in the folder
750            * @throws PortalException if the folder ould not be found
751            * @throws SystemException if a system exception occurred
752            */
753            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
754            public int getFileEntriesAndFileShortcutsCount(long repositoryId,
755                    long folderId, int status, java.lang.String[] mimeTypes)
756                    throws com.liferay.portal.kernel.exception.PortalException,
757                            com.liferay.portal.kernel.exception.SystemException;
758    
759            /**
760            * Returns the number of file entries in the folder.
761            *
762            * @param repositoryId the primary key of the file entry's repository
763            * @param folderId the primary key of the file entry's folder
764            * @return the number of file entries in the folder
765            * @throws PortalException if the folder could not be found
766            * @throws SystemException if a system exception occurred
767            */
768            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
769            public int getFileEntriesCount(long repositoryId, long folderId)
770                    throws com.liferay.portal.kernel.exception.PortalException,
771                            com.liferay.portal.kernel.exception.SystemException;
772    
773            /**
774            * Returns the number of file entries with the file entry type in the
775            * folder.
776            *
777            * @param repositoryId the primary key of the file entry's repository
778            * @param folderId the primary key of the file entry's folder
779            * @param fileEntryTypeId the primary key of the file entry type
780            * @return the number of file entries with the file entry type in the folder
781            * @throws PortalException if the folder could not be found
782            * @throws SystemException if a system exception occurred
783            */
784            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
785            public int getFileEntriesCount(long repositoryId, long folderId,
786                    long fileEntryTypeId)
787                    throws com.liferay.portal.kernel.exception.PortalException,
788                            com.liferay.portal.kernel.exception.SystemException;
789    
790            /**
791            * Returns the file entry with the primary key.
792            *
793            * @param fileEntryId the primary key of the file entry
794            * @return the file entry with the primary key
795            * @throws PortalException if the file entry could not be found
796            * @throws SystemException if a system exception occurred
797            */
798            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
799            public com.liferay.portal.kernel.repository.model.FileEntry getFileEntry(
800                    long fileEntryId)
801                    throws com.liferay.portal.kernel.exception.PortalException,
802                            com.liferay.portal.kernel.exception.SystemException;
803    
804            /**
805            * Returns the file entry with the title in the folder.
806            *
807            * @param groupId the primary key of the file entry's group
808            * @param folderId the primary key of the file entry's folder
809            * @param title the file entry's title
810            * @return the file entry with the title in the folder
811            * @throws PortalException if the file entry could not be found
812            * @throws SystemException if a system exception occurred
813            */
814            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
815            public com.liferay.portal.kernel.repository.model.FileEntry getFileEntry(
816                    long groupId, long folderId, java.lang.String title)
817                    throws com.liferay.portal.kernel.exception.PortalException,
818                            com.liferay.portal.kernel.exception.SystemException;
819    
820            /**
821            * Returns the file entry with the UUID and group.
822            *
823            * @param uuid the file entry's UUID
824            * @param groupId the primary key of the file entry's group
825            * @return the file entry with the UUID and group
826            * @throws PortalException if the file entry could not be found
827            * @throws SystemException if a system exception occurred
828            */
829            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
830            public com.liferay.portal.kernel.repository.model.FileEntry getFileEntryByUuidAndGroupId(
831                    java.lang.String uuid, long groupId)
832                    throws com.liferay.portal.kernel.exception.PortalException,
833                            com.liferay.portal.kernel.exception.SystemException;
834    
835            /**
836            * Returns the file shortcut with the primary key. This method is only
837            * supported by the Liferay repository.
838            *
839            * @param fileShortcutId the primary key of the file shortcut
840            * @return the file shortcut with the primary key
841            * @throws PortalException if the file shortcut could not be found
842            * @throws SystemException if a system exception occurred
843            */
844            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
845            public com.liferay.portlet.documentlibrary.model.DLFileShortcut getFileShortcut(
846                    long fileShortcutId)
847                    throws com.liferay.portal.kernel.exception.PortalException,
848                            com.liferay.portal.kernel.exception.SystemException;
849    
850            /**
851            * Returns the folder with the primary key.
852            *
853            * @param folderId the primary key of the folder
854            * @return the folder with the primary key
855            * @throws PortalException if the folder could not be found
856            * @throws SystemException if a system exception occurred
857            */
858            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
859            public com.liferay.portal.kernel.repository.model.Folder getFolder(
860                    long folderId)
861                    throws com.liferay.portal.kernel.exception.PortalException,
862                            com.liferay.portal.kernel.exception.SystemException;
863    
864            /**
865            * Returns the folder with the name in the parent folder.
866            *
867            * @param repositoryId the primary key of the folder's repository
868            * @param parentFolderId the primary key of the folder's parent folder
869            * @param name the folder's name
870            * @return the folder with the name in the parent folder
871            * @throws PortalException if the folder could not be found
872            * @throws SystemException if a system exception occurred
873            */
874            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
875            public com.liferay.portal.kernel.repository.model.Folder getFolder(
876                    long repositoryId, long parentFolderId, java.lang.String name)
877                    throws com.liferay.portal.kernel.exception.PortalException,
878                            com.liferay.portal.kernel.exception.SystemException;
879    
880            /**
881            * Returns all immediate subfolders of the parent folder.
882            *
883            * @param repositoryId the primary key of the folder's repository
884            * @param parentFolderId the primary key of the folder's parent folder
885            * @return the immediate subfolders of the parent folder
886            * @throws PortalException if the parent folder could not be found
887            * @throws SystemException if a system exception occurred
888            */
889            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
890            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
891                    long repositoryId, long parentFolderId)
892                    throws com.liferay.portal.kernel.exception.PortalException,
893                            com.liferay.portal.kernel.exception.SystemException;
894    
895            /**
896            * Returns all immediate subfolders of the parent folder, optionally
897            * including mount folders for third-party repositories.
898            *
899            * @param repositoryId the primary key of the folder's repository
900            * @param parentFolderId the primary key of the folder's parent folder
901            * @param includeMountFolders whether to include mount folders for
902            third-party repositories
903            * @return the immediate subfolders of the parent folder
904            * @throws PortalException if the parent folder could not be found
905            * @throws SystemException if a system exception occurred
906            */
907            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
908            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
909                    long repositoryId, long parentFolderId, boolean includeMountFolders)
910                    throws com.liferay.portal.kernel.exception.PortalException,
911                            com.liferay.portal.kernel.exception.SystemException;
912    
913            /**
914            * Returns a name-ordered range of all the immediate subfolders of the
915            * parent folder, optionally including mount folders for third-party
916            * repositories.
917            *
918            * <p>
919            * Useful when paginating results. Returns a maximum of <code>end -
920            * start</code> instances. <code>start</code> and <code>end</code> are not
921            * primary keys, they are indexes in the result set. Thus, <code>0</code>
922            * refers to the first result in the set. Setting both <code>start</code>
923            * and <code>end</code> to {@link
924            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
925            * result set.
926            * </p>
927            *
928            * @param repositoryId the primary key of the folder's repository
929            * @param parentFolderId the primary key of the folder's parent folder
930            * @param includeMountFolders whether to include mount folders for
931            third-party repositories
932            * @param start the lower bound of the range of results
933            * @param end the upper bound of the range of results (not inclusive)
934            * @return the name-ordered range of immediate subfolders of the parent
935            folder
936            * @throws PortalException if the parent folder could not be found
937            * @throws SystemException if a system exception occurred
938            */
939            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
940            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
941                    long repositoryId, long parentFolderId, boolean includeMountFolders,
942                    int start, int end)
943                    throws com.liferay.portal.kernel.exception.PortalException,
944                            com.liferay.portal.kernel.exception.SystemException;
945    
946            /**
947            * Returns an ordered range of all the immediate subfolders of the parent
948            * folder.
949            *
950            * <p>
951            * Useful when paginating results. Returns a maximum of <code>end -
952            * start</code> instances. <code>start</code> and <code>end</code> are not
953            * primary keys, they are indexes in the result set. Thus, <code>0</code>
954            * refers to the first result in the set. Setting both <code>start</code>
955            * and <code>end</code> to {@link
956            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
957            * result set.
958            * </p>
959            *
960            * @param repositoryId the primary key of the folder's repository
961            * @param parentFolderId the primary key of the folder's parent folder
962            * @param includeMountFolders whether to include mount folders for
963            third-party repositories
964            * @param start the lower bound of the range of results
965            * @param end the upper bound of the range of results (not inclusive)
966            * @param obc the comparator to order the folders (optionally
967            <code>null</code>)
968            * @return the range of immediate subfolders of the parent folder ordered by
969            comparator <code>obc</code>
970            * @throws PortalException if the parent folder could not be found
971            * @throws SystemException if a system exception occurred
972            */
973            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
974            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
975                    long repositoryId, long parentFolderId, boolean includeMountFolders,
976                    int start, int end, com.liferay.portal.kernel.util.OrderByComparator obc)
977                    throws com.liferay.portal.kernel.exception.PortalException,
978                            com.liferay.portal.kernel.exception.SystemException;
979    
980            /**
981            * Returns an ordered range of all the immediate subfolders of the parent
982            * folder.
983            *
984            * <p>
985            * Useful when paginating results. Returns a maximum of <code>end -
986            * start</code> instances. <code>start</code> and <code>end</code> are not
987            * primary keys, they are indexes in the result set. Thus, <code>0</code>
988            * refers to the first result in the set. Setting both <code>start</code>
989            * and <code>end</code> to {@link
990            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
991            * result set.
992            * </p>
993            *
994            * @param repositoryId the primary key of the folder's repository
995            * @param parentFolderId the primary key of the folder's parent folder
996            * @param status the workflow status
997            * @param includeMountFolders whether to include mount folders for
998            third-party repositories
999            * @param start the lower bound of the range of results
1000            * @param end the upper bound of the range of results (not inclusive)
1001            * @param obc the comparator to order the folders (optionally
1002            <code>null</code>)
1003            * @return the range of immediate subfolders of the parent folder ordered by
1004            comparator <code>obc</code>
1005            * @throws PortalException if the parent folder could not be found
1006            * @throws SystemException if a system exception occurred
1007            */
1008            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1009            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
1010                    long repositoryId, long parentFolderId, int status,
1011                    boolean includeMountFolders, int start, int end,
1012                    com.liferay.portal.kernel.util.OrderByComparator obc)
1013                    throws com.liferay.portal.kernel.exception.PortalException,
1014                            com.liferay.portal.kernel.exception.SystemException;
1015    
1016            /**
1017            * Returns a name-ordered range of all the immediate subfolders of the
1018            * parent folder.
1019            *
1020            * <p>
1021            * Useful when paginating results. Returns a maximum of <code>end -
1022            * start</code> instances. <code>start</code> and <code>end</code> are not
1023            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1024            * refers to the first result in the set. Setting both <code>start</code>
1025            * and <code>end</code> to {@link
1026            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1027            * result set.
1028            * </p>
1029            *
1030            * @param repositoryId the primary key of the folder's repository
1031            * @param parentFolderId the primary key of the folder's parent folder
1032            * @param start the lower bound of the range of results
1033            * @param end the upper bound of the range of results (not inclusive)
1034            * @return the name-ordered range of immediate subfolders of the parent
1035            folder
1036            * @throws PortalException if the parent folder could not be found
1037            * @throws SystemException if a system exception occurred
1038            */
1039            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1040            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
1041                    long repositoryId, long parentFolderId, int start, int end)
1042                    throws com.liferay.portal.kernel.exception.PortalException,
1043                            com.liferay.portal.kernel.exception.SystemException;
1044    
1045            /**
1046            * Returns an ordered range of all the immediate subfolders of the parent
1047            * folder.
1048            *
1049            * <p>
1050            * Useful when paginating results. Returns a maximum of <code>end -
1051            * start</code> instances. <code>start</code> and <code>end</code> are not
1052            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1053            * refers to the first result in the set. Setting both <code>start</code>
1054            * and <code>end</code> to {@link
1055            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1056            * result set.
1057            * </p>
1058            *
1059            * @param repositoryId the primary key of the folder's repository
1060            * @param parentFolderId the primary key of the folder's parent folder
1061            * @param start the lower bound of the range of results
1062            * @param end the upper bound of the range of results (not inclusive)
1063            * @param obc the comparator to order the folders (optionally
1064            <code>null</code>)
1065            * @return the range of immediate subfolders of the parent folder ordered by
1066            comparator <code>obc</code>
1067            * @throws PortalException if the parent folder could not be found
1068            * @throws SystemException if a system exception occurred
1069            */
1070            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1071            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getFolders(
1072                    long repositoryId, long parentFolderId, int start, int end,
1073                    com.liferay.portal.kernel.util.OrderByComparator obc)
1074                    throws com.liferay.portal.kernel.exception.PortalException,
1075                            com.liferay.portal.kernel.exception.SystemException;
1076    
1077            /**
1078            * Returns a name-ordered range of all the immediate subfolders, file
1079            * entries, and file shortcuts in the parent folder.
1080            *
1081            * <p>
1082            * Useful when paginating results. Returns a maximum of <code>end -
1083            * start</code> instances. <code>start</code> and <code>end</code> are not
1084            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1085            * refers to the first result in the set. Setting both <code>start</code>
1086            * and <code>end</code> to {@link
1087            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1088            * result set.
1089            * </p>
1090            *
1091            * @param repositoryId the primary key of the repository
1092            * @param folderId the primary key of the parent folder
1093            * @param status the workflow status
1094            * @param includeMountFolders whether to include mount folders for
1095            third-party repositories
1096            * @param start the lower bound of the range of results
1097            * @param end the upper bound of the range of results (not inclusive)
1098            * @return the name-ordered range of immediate subfolders, file entries, and
1099            file shortcuts in the parent folder
1100            * @throws PortalException if the parent folder could not be found
1101            * @throws SystemException if a system exception occurred
1102            */
1103            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1104            public java.util.List<java.lang.Object> getFoldersAndFileEntriesAndFileShortcuts(
1105                    long repositoryId, long folderId, int status,
1106                    boolean includeMountFolders, int start, int end)
1107                    throws com.liferay.portal.kernel.exception.PortalException,
1108                            com.liferay.portal.kernel.exception.SystemException;
1109    
1110            /**
1111            * Returns an ordered range of all the immediate subfolders, file entries,
1112            * and file shortcuts in the parent folder.
1113            *
1114            * <p>
1115            * Useful when paginating results. Returns a maximum of <code>end -
1116            * start</code> instances. <code>start</code> and <code>end</code> are not
1117            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1118            * refers to the first result in the set. Setting both <code>start</code>
1119            * and <code>end</code> to {@link
1120            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1121            * result set.
1122            * </p>
1123            *
1124            * @param repositoryId the primary key of the repository
1125            * @param folderId the primary key of the parent folder
1126            * @param status the workflow status
1127            * @param includeMountFolders whether to include mount folders for
1128            third-party repositories
1129            * @param start the lower bound of the range of results
1130            * @param end the upper bound of the range of results (not inclusive)
1131            * @param obc the comparator to order the results (optionally
1132            <code>null</code>)
1133            * @return the range of immediate subfolders, file entries, and file
1134            shortcuts in the parent folder ordered by comparator
1135            <code>obc</code>
1136            * @throws PortalException if the parent folder could not be found
1137            * @throws SystemException if a system exception occurred
1138            */
1139            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1140            public java.util.List<java.lang.Object> getFoldersAndFileEntriesAndFileShortcuts(
1141                    long repositoryId, long folderId, int status,
1142                    boolean includeMountFolders, int start, int end,
1143                    com.liferay.portal.kernel.util.OrderByComparator obc)
1144                    throws com.liferay.portal.kernel.exception.PortalException,
1145                            com.liferay.portal.kernel.exception.SystemException;
1146    
1147            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1148            public java.util.List<java.lang.Object> getFoldersAndFileEntriesAndFileShortcuts(
1149                    long repositoryId, long folderId, int status,
1150                    java.lang.String[] mimeTypes, boolean includeMountFolders, int start,
1151                    int end, com.liferay.portal.kernel.util.OrderByComparator obc)
1152                    throws com.liferay.portal.kernel.exception.PortalException,
1153                            com.liferay.portal.kernel.exception.SystemException;
1154    
1155            /**
1156            * Returns the number of immediate subfolders, file entries, and file
1157            * shortcuts in the parent folder.
1158            *
1159            * @param repositoryId the primary key of the repository
1160            * @param folderId the primary key of the parent folder
1161            * @param status the workflow status
1162            * @param includeMountFolders whether to include mount folders for
1163            third-party repositories
1164            * @return the number of immediate subfolders, file entries, and file
1165            shortcuts in the parent folder
1166            * @throws PortalException if the folder could not be found
1167            * @throws SystemException if a system exception occurred
1168            */
1169            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1170            public int getFoldersAndFileEntriesAndFileShortcutsCount(
1171                    long repositoryId, long folderId, int status,
1172                    boolean includeMountFolders)
1173                    throws com.liferay.portal.kernel.exception.PortalException,
1174                            com.liferay.portal.kernel.exception.SystemException;
1175    
1176            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1177            public int getFoldersAndFileEntriesAndFileShortcutsCount(
1178                    long repositoryId, long folderId, int status,
1179                    java.lang.String[] mimeTypes, boolean includeMountFolders)
1180                    throws com.liferay.portal.kernel.exception.PortalException,
1181                            com.liferay.portal.kernel.exception.SystemException;
1182    
1183            /**
1184            * Returns the number of immediate subfolders of the parent folder.
1185            *
1186            * @param repositoryId the primary key of the folder's repository
1187            * @param parentFolderId the primary key of the folder's parent folder
1188            * @return the number of immediate subfolders of the parent folder
1189            * @throws PortalException if the parent folder could not be found
1190            * @throws SystemException if a system exception occurred
1191            */
1192            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1193            public int getFoldersCount(long repositoryId, long parentFolderId)
1194                    throws com.liferay.portal.kernel.exception.PortalException,
1195                            com.liferay.portal.kernel.exception.SystemException;
1196    
1197            /**
1198            * Returns the number of immediate subfolders of the parent folder,
1199            * optionally including mount folders for third-party repositories.
1200            *
1201            * @param repositoryId the primary key of the folder's repository
1202            * @param parentFolderId the primary key of the folder's parent folder
1203            * @param includeMountFolders whether to include mount folders for
1204            third-party repositories
1205            * @return the number of immediate subfolders of the parent folder
1206            * @throws PortalException if the parent folder could not be found
1207            * @throws SystemException if a system exception occurred
1208            */
1209            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1210            public int getFoldersCount(long repositoryId, long parentFolderId,
1211                    boolean includeMountFolders)
1212                    throws com.liferay.portal.kernel.exception.PortalException,
1213                            com.liferay.portal.kernel.exception.SystemException;
1214    
1215            /**
1216            * Returns the number of immediate subfolders of the parent folder,
1217            * optionally including mount folders for third-party repositories.
1218            *
1219            * @param repositoryId the primary key of the folder's repository
1220            * @param parentFolderId the primary key of the folder's parent folder
1221            * @param status the workflow status
1222            * @param includeMountFolders whether to include mount folders for
1223            third-party repositories
1224            * @return the number of immediate subfolders of the parent folder
1225            * @throws PortalException if the parent folder could not be found
1226            * @throws SystemException if a system exception occurred
1227            */
1228            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1229            public int getFoldersCount(long repositoryId, long parentFolderId,
1230                    int status, boolean includeMountFolders)
1231                    throws com.liferay.portal.kernel.exception.PortalException,
1232                            com.liferay.portal.kernel.exception.SystemException;
1233    
1234            /**
1235            * Returns the number of immediate subfolders and file entries across the
1236            * folders.
1237            *
1238            * @param repositoryId the primary key of the repository
1239            * @param folderIds the primary keys of folders from which to count
1240            immediate subfolders and file entries
1241            * @param status the workflow status
1242            * @return the number of immediate subfolders and file entries across the
1243            folders
1244            * @throws PortalException if the repository could not be found
1245            * @throws SystemException if a system exception occurred
1246            */
1247            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1248            public int getFoldersFileEntriesCount(long repositoryId,
1249                    java.util.List<java.lang.Long> folderIds, int status)
1250                    throws com.liferay.portal.kernel.exception.PortalException,
1251                            com.liferay.portal.kernel.exception.SystemException;
1252    
1253            /**
1254            * Returns an ordered range of all the file entries in the group starting at
1255            * the repository default parent folder that are stored within the Liferay
1256            * repository. This method is primarily used to search for recently modified
1257            * file entries. It can be limited to the file entries modified by a given
1258            * user.
1259            *
1260            * <p>
1261            * Useful when paginating results. Returns a maximum of <code>end -
1262            * start</code> instances. <code>start</code> and <code>end</code> are not
1263            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1264            * refers to the first result in the set. Setting both <code>start</code>
1265            * and <code>end</code> to {@link
1266            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1267            * result set.
1268            * </p>
1269            *
1270            * @param groupId the primary key of the group
1271            * @param userId the primary key of the user who created the file
1272            (optionally <code>0</code>)
1273            * @param start the lower bound of the range of results
1274            * @param end the upper bound of the range of results (not inclusive)
1275            * @return the range of matching file entries ordered by date modified
1276            * @throws PortalException if the group could not be found
1277            * @throws SystemException if a system exception occurred
1278            */
1279            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1280            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getGroupFileEntries(
1281                    long groupId, long userId, int start, int end)
1282                    throws com.liferay.portal.kernel.exception.PortalException,
1283                            com.liferay.portal.kernel.exception.SystemException;
1284    
1285            /**
1286            * Returns an ordered range of all the file entries in the group that are
1287            * stored within the Liferay repository. This method is primarily used to
1288            * search for recently modified file entries. It can be limited to the file
1289            * entries modified by a given user.
1290            *
1291            * <p>
1292            * Useful when paginating results. Returns a maximum of <code>end -
1293            * start</code> instances. <code>start</code> and <code>end</code> are not
1294            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1295            * refers to the first result in the set. Setting both <code>start</code>
1296            * and <code>end</code> to {@link
1297            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1298            * result set.
1299            * </p>
1300            *
1301            * @param groupId the primary key of the group
1302            * @param userId the primary key of the user who created the file
1303            (optionally <code>0</code>)
1304            * @param start the lower bound of the range of results
1305            * @param end the upper bound of the range of results (not inclusive)
1306            * @param obc the comparator to order the file entries (optionally
1307            <code>null</code>)
1308            * @return the range of matching file entries ordered by comparator
1309            <code>obc</code>
1310            * @throws PortalException if the group could not be found
1311            * @throws SystemException if a system exception occurred
1312            */
1313            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1314            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getGroupFileEntries(
1315                    long groupId, long userId, int start, int end,
1316                    com.liferay.portal.kernel.util.OrderByComparator obc)
1317                    throws com.liferay.portal.kernel.exception.PortalException,
1318                            com.liferay.portal.kernel.exception.SystemException;
1319    
1320            /**
1321            * Returns an ordered range of all the file entries in the group starting at
1322            * the root folder that are stored within the Liferay repository. This
1323            * method is primarily used to search for recently modified file entries. It
1324            * can be limited to the file entries modified by a given user.
1325            *
1326            * <p>
1327            * Useful when paginating results. Returns a maximum of <code>end -
1328            * start</code> instances. <code>start</code> and <code>end</code> are not
1329            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1330            * refers to the first result in the set. Setting both <code>start</code>
1331            * and <code>end</code> to {@link
1332            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1333            * result set.
1334            * </p>
1335            *
1336            * @param groupId the primary key of the group
1337            * @param userId the primary key of the user who created the file
1338            (optionally <code>0</code>)
1339            * @param rootFolderId the primary key of the root folder to begin the
1340            search
1341            * @param start the lower bound of the range of results
1342            * @param end the upper bound of the range of results (not inclusive)
1343            * @return the range of matching file entries ordered by date modified
1344            * @throws PortalException if the group could not be found
1345            * @throws SystemException if a system exception occurred
1346            */
1347            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1348            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getGroupFileEntries(
1349                    long groupId, long userId, long rootFolderId, int start, int end)
1350                    throws com.liferay.portal.kernel.exception.PortalException,
1351                            com.liferay.portal.kernel.exception.SystemException;
1352    
1353            /**
1354            * Returns an ordered range of all the file entries in the group starting at
1355            * the root folder that are stored within the Liferay repository. This
1356            * method is primarily used to search for recently modified file entries. It
1357            * can be limited to the file entries modified by a given user.
1358            *
1359            * <p>
1360            * Useful when paginating results. Returns a maximum of <code>end -
1361            * start</code> instances. <code>start</code> and <code>end</code> are not
1362            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1363            * refers to the first result in the set. Setting both <code>start</code>
1364            * and <code>end</code> to {@link
1365            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1366            * result set.
1367            * </p>
1368            *
1369            * @param groupId the primary key of the group
1370            * @param userId the primary key of the user who created the file
1371            (optionally <code>0</code>)
1372            * @param rootFolderId the primary key of the root folder to begin the
1373            search
1374            * @param start the lower bound of the range of results
1375            * @param end the upper bound of the range of results (not inclusive)
1376            * @param obc the comparator to order the file entries (optionally
1377            <code>null</code>)
1378            * @return the range of matching file entries ordered by comparator
1379            <code>obc</code>
1380            * @throws PortalException if the group could not be found
1381            * @throws SystemException if a system exception occurred
1382            */
1383            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1384            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getGroupFileEntries(
1385                    long groupId, long userId, long rootFolderId, int start, int end,
1386                    com.liferay.portal.kernel.util.OrderByComparator obc)
1387                    throws com.liferay.portal.kernel.exception.PortalException,
1388                            com.liferay.portal.kernel.exception.SystemException;
1389    
1390            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1391            public java.util.List<com.liferay.portal.kernel.repository.model.FileEntry> getGroupFileEntries(
1392                    long groupId, long userId, long rootFolderId,
1393                    java.lang.String[] mimeTypes, int status, int start, int end,
1394                    com.liferay.portal.kernel.util.OrderByComparator obc)
1395                    throws com.liferay.portal.kernel.exception.PortalException,
1396                            com.liferay.portal.kernel.exception.SystemException;
1397    
1398            /**
1399            * Returns the number of file entries in a group starting at the repository
1400            * default parent folder that are stored within the Liferay repository. This
1401            * method is primarily used to search for recently modified file entries. It
1402            * can be limited to the file entries modified by a given user.
1403            *
1404            * @param groupId the primary key of the group
1405            * @param userId the primary key of the user who created the file
1406            (optionally <code>0</code>)
1407            * @return the number of matching file entries
1408            * @throws PortalException if the group could not be found
1409            * @throws SystemException if a system exception occurred
1410            */
1411            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1412            public int getGroupFileEntriesCount(long groupId, long userId)
1413                    throws com.liferay.portal.kernel.exception.PortalException,
1414                            com.liferay.portal.kernel.exception.SystemException;
1415    
1416            /**
1417            * Returns the number of file entries in a group starting at the root folder
1418            * that are stored within the Liferay repository. This method is primarily
1419            * used to search for recently modified file entries. It can be limited to
1420            * the file entries modified by a given user.
1421            *
1422            * @param groupId the primary key of the group
1423            * @param userId the primary key of the user who created the file
1424            (optionally <code>0</code>)
1425            * @param rootFolderId the primary key of the root folder to begin the
1426            search
1427            * @return the number of matching file entries
1428            * @throws PortalException if the group could not be found
1429            * @throws SystemException if a system exception occurred
1430            */
1431            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1432            public int getGroupFileEntriesCount(long groupId, long userId,
1433                    long rootFolderId)
1434                    throws com.liferay.portal.kernel.exception.PortalException,
1435                            com.liferay.portal.kernel.exception.SystemException;
1436    
1437            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1438            public int getGroupFileEntriesCount(long groupId, long userId,
1439                    long rootFolderId, java.lang.String[] mimeTypes, int status)
1440                    throws com.liferay.portal.kernel.exception.PortalException,
1441                            com.liferay.portal.kernel.exception.SystemException;
1442    
1443            /**
1444            * Returns all immediate subfolders of the parent folder that are used for
1445            * mounting third-party repositories. This method is only supported by the
1446            * Liferay repository.
1447            *
1448            * @param repositoryId the primary key of the folder's repository
1449            * @param parentFolderId the primary key of the folder's parent folder
1450            * @return the immediate subfolders of the parent folder that are used for
1451            mounting third-party repositories
1452            * @throws PortalException if the repository or parent folder could not be
1453            found
1454            * @throws SystemException if a system exception occurred
1455            */
1456            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1457            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getMountFolders(
1458                    long repositoryId, long parentFolderId)
1459                    throws com.liferay.portal.kernel.exception.PortalException,
1460                            com.liferay.portal.kernel.exception.SystemException;
1461    
1462            /**
1463            * Returns a name-ordered range of all the immediate subfolders of the
1464            * parent folder that are used for mounting third-party repositories. This
1465            * method is only supported by the Liferay repository.
1466            *
1467            * <p>
1468            * Useful when paginating results. Returns a maximum of <code>end -
1469            * start</code> instances. <code>start</code> and <code>end</code> are not
1470            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1471            * refers to the first result in the set. Setting both <code>start</code>
1472            * and <code>end</code> to {@link
1473            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1474            * result set.
1475            * </p>
1476            *
1477            * @param repositoryId the primary key of the repository
1478            * @param parentFolderId the primary key of the parent folder
1479            * @param start the lower bound of the range of results
1480            * @param end the upper bound of the range of results (not inclusive)
1481            * @return the name-ordered range of immediate subfolders of the parent
1482            folder that are used for mounting third-party repositories
1483            * @throws PortalException if the repository or parent folder could not be
1484            found
1485            * @throws SystemException if a system exception occurred
1486            */
1487            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1488            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getMountFolders(
1489                    long repositoryId, long parentFolderId, int start, int end)
1490                    throws com.liferay.portal.kernel.exception.PortalException,
1491                            com.liferay.portal.kernel.exception.SystemException;
1492    
1493            /**
1494            * Returns an ordered range of all the immediate subfolders of the parent
1495            * folder that are used for mounting third-party repositories. This method
1496            * is only supported by the Liferay repository.
1497            *
1498            * <p>
1499            * Useful when paginating results. Returns a maximum of <code>end -
1500            * start</code> instances. <code>start</code> and <code>end</code> are not
1501            * primary keys, they are indexes in the result set. Thus, <code>0</code>
1502            * refers to the first result in the set. Setting both <code>start</code>
1503            * and <code>end</code> to {@link
1504            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
1505            * result set.
1506            * </p>
1507            *
1508            * @param repositoryId the primary key of the folder's repository
1509            * @param parentFolderId the primary key of the folder's parent folder
1510            * @param start the lower bound of the range of results
1511            * @param end the upper bound of the range of results (not inclusive)
1512            * @param obc the comparator to order the folders (optionally
1513            <code>null</code>)
1514            * @return the range of immediate subfolders of the parent folder that are
1515            used for mounting third-party repositories ordered by comparator
1516            <code>obc</code>
1517            * @throws PortalException if the repository or parent folder could not be
1518            found
1519            * @throws SystemException if a system exception occurred
1520            */
1521            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1522            public java.util.List<com.liferay.portal.kernel.repository.model.Folder> getMountFolders(
1523                    long repositoryId, long parentFolderId, int start, int end,
1524                    com.liferay.portal.kernel.util.OrderByComparator obc)
1525                    throws com.liferay.portal.kernel.exception.PortalException,
1526                            com.liferay.portal.kernel.exception.SystemException;
1527    
1528            /**
1529            * Returns the number of immediate subfolders of the parent folder that are
1530            * used for mounting third-party repositories. This method is only supported
1531            * by the Liferay repository.
1532            *
1533            * @param repositoryId the primary key of the repository
1534            * @param parentFolderId the primary key of the parent folder
1535            * @return the number of folders of the parent folder that are used for
1536            mounting third-party repositories
1537            * @throws PortalException if the repository or parent folder could not be
1538            found
1539            * @throws SystemException if a system exception occurred
1540            */
1541            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1542            public int getMountFoldersCount(long repositoryId, long parentFolderId)
1543                    throws com.liferay.portal.kernel.exception.PortalException,
1544                            com.liferay.portal.kernel.exception.SystemException;
1545    
1546            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1547            public void getSubfolderIds(long repositoryId,
1548                    java.util.List<java.lang.Long> folderIds, long folderId)
1549                    throws com.liferay.portal.kernel.exception.PortalException,
1550                            com.liferay.portal.kernel.exception.SystemException;
1551    
1552            /**
1553            * Returns all the descendant folders of the folder with the primary key.
1554            *
1555            * @param repositoryId the primary key of the repository
1556            * @param folderId the primary key of the folder
1557            * @return the descendant folders of the folder with the primary key
1558            * @throws PortalException if the repository or parent folder could not be
1559            found
1560            * @throws SystemException if a system exception occurred
1561            */
1562            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1563            public java.util.List<java.lang.Long> getSubfolderIds(long repositoryId,
1564                    long folderId)
1565                    throws com.liferay.portal.kernel.exception.PortalException,
1566                            com.liferay.portal.kernel.exception.SystemException;
1567    
1568            /**
1569            * Returns descendant folders of the folder with the primary key, optionally
1570            * limiting to one level deep.
1571            *
1572            * @param repositoryId the primary key of the repository
1573            * @param folderId the primary key of the folder
1574            * @param recurse whether to recurse through each subfolder
1575            * @return the descendant folders of the folder with the primary key
1576            * @throws PortalException if the repository or parent folder could not be
1577            found
1578            * @throws SystemException if a system exception occurred
1579            */
1580            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1581            public java.util.List<java.lang.Long> getSubfolderIds(long repositoryId,
1582                    long folderId, boolean recurse)
1583                    throws com.liferay.portal.kernel.exception.PortalException,
1584                            com.liferay.portal.kernel.exception.SystemException;
1585    
1586            /**
1587            * Returns all the temporary file entry names.
1588            *
1589            * @param groupId the primary key of the group
1590            * @param folderId the primary key of the folder where the file entry will
1591            eventually reside
1592            * @param tempFolderName the temporary folder's name
1593            * @return the temporary file entry names
1594            * @throws PortalException if the folder was invalid
1595            * @throws SystemException if a system exception occurred
1596            * @see #addTempFileEntry(long, long, String, String, File, String)
1597            * @see com.liferay.portal.kernel.util.TempFileUtil
1598            */
1599            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1600            public java.lang.String[] getTempFileEntryNames(long groupId,
1601                    long folderId, java.lang.String tempFolderName)
1602                    throws com.liferay.portal.kernel.exception.PortalException,
1603                            com.liferay.portal.kernel.exception.SystemException;
1604    
1605            /**
1606            * @deprecated As of 6.2.0, replaced by {@link #checkOutFileEntry(long,
1607            ServiceContext)}
1608            */
1609            public com.liferay.portal.model.Lock lockFileEntry(long fileEntryId)
1610                    throws com.liferay.portal.kernel.exception.PortalException,
1611                            com.liferay.portal.kernel.exception.SystemException;
1612    
1613            /**
1614            * @deprecated As of 6.2.0, replaced by {@link #checkOutFileEntry(long,
1615            String, long, ServiceContext)}
1616            */
1617            public com.liferay.portal.model.Lock lockFileEntry(long fileEntryId,
1618                    java.lang.String owner, long expirationTime)
1619                    throws com.liferay.portal.kernel.exception.PortalException,
1620                            com.liferay.portal.kernel.exception.SystemException;
1621    
1622            /**
1623            * Locks the folder. This method is primarily used by WebDAV.
1624            *
1625            * @param repositoryId the primary key of the repository
1626            * @param folderId the primary key of the folder
1627            * @return the lock object
1628            * @throws PortalException if the repository or folder could not be found
1629            * @throws SystemException if a system exception occurred
1630            */
1631            public com.liferay.portal.model.Lock lockFolder(long repositoryId,
1632                    long folderId)
1633                    throws com.liferay.portal.kernel.exception.PortalException,
1634                            com.liferay.portal.kernel.exception.SystemException;
1635    
1636            /**
1637            * Locks the folder. This method is primarily used by WebDAV.
1638            *
1639            * @param repositoryId the primary key of the repository
1640            * @param folderId the primary key of the folder
1641            * @param owner the owner string for the checkout (optionally
1642            <code>null</code>)
1643            * @param inheritable whether the lock must propagate to descendants
1644            * @param expirationTime the time in milliseconds before the lock expires.
1645            If the value is <code>0</code>, the default expiration time will
1646            be used from <code>portal.properties>.
1647            * @return the lock object
1648            * @throws PortalException if the repository or folder could not be found
1649            * @throws SystemException if a system exception occurred
1650            */
1651            public com.liferay.portal.model.Lock lockFolder(long repositoryId,
1652                    long folderId, java.lang.String owner, boolean inheritable,
1653                    long expirationTime)
1654                    throws com.liferay.portal.kernel.exception.PortalException,
1655                            com.liferay.portal.kernel.exception.SystemException;
1656    
1657            /**
1658            * Moves the file entry to the new folder.
1659            *
1660            * @param fileEntryId the primary key of the file entry
1661            * @param newFolderId the primary key of the new folder
1662            * @param serviceContext the service context to be applied
1663            * @return the file entry
1664            * @throws PortalException if the file entry or the new folder could not be
1665            found
1666            * @throws SystemException if a system exception occurred
1667            */
1668            public com.liferay.portal.kernel.repository.model.FileEntry moveFileEntry(
1669                    long fileEntryId, long newFolderId,
1670                    com.liferay.portal.service.ServiceContext serviceContext)
1671                    throws com.liferay.portal.kernel.exception.PortalException,
1672                            com.liferay.portal.kernel.exception.SystemException;
1673    
1674            /**
1675            * Moves the file entry from a trashed folder to the new folder.
1676            *
1677            * @param fileEntryId the primary key of the file entry
1678            * @param newFolderId the primary key of the new folder
1679            * @param serviceContext the service context to be applied
1680            * @return the file entry
1681            * @throws PortalException if the file entry or the new folder could not be
1682            found
1683            * @throws SystemException if a system exception occurred
1684            */
1685            public com.liferay.portal.kernel.repository.model.FileEntry moveFileEntryFromTrash(
1686                    long fileEntryId, long newFolderId,
1687                    com.liferay.portal.service.ServiceContext serviceContext)
1688                    throws com.liferay.portal.kernel.exception.PortalException,
1689                            com.liferay.portal.kernel.exception.SystemException;
1690    
1691            /**
1692            * Moves the file entry with the primary key to the trash portlet.
1693            *
1694            * @param fileEntryId the primary key of the file entry
1695            * @return the file entry
1696            * @throws PortalException if the file entry could not be found
1697            * @throws SystemException if a system exception occurred
1698            */
1699            public com.liferay.portal.kernel.repository.model.FileEntry moveFileEntryToTrash(
1700                    long fileEntryId)
1701                    throws com.liferay.portal.kernel.exception.PortalException,
1702                            com.liferay.portal.kernel.exception.SystemException;
1703    
1704            /**
1705            * Moves the file shortcut from a trashed folder to the new folder.
1706            *
1707            * @param fileShortcutId the primary key of the file shortcut
1708            * @param newFolderId the primary key of the new folder
1709            * @param serviceContext the service context to be applied
1710            * @return the file shortcut
1711            * @throws PortalException if the file entry or the new folder could not be
1712            found
1713            * @throws SystemException if a system exception occurred
1714            */
1715            public com.liferay.portlet.documentlibrary.model.DLFileShortcut moveFileShortcutFromTrash(
1716                    long fileShortcutId, long newFolderId,
1717                    com.liferay.portal.service.ServiceContext serviceContext)
1718                    throws com.liferay.portal.kernel.exception.PortalException,
1719                            com.liferay.portal.kernel.exception.SystemException;
1720    
1721            /**
1722            * Moves the file shortcut with the primary key to the trash portlet.
1723            *
1724            * @param fileShortcutId the primary key of the file shortcut
1725            * @return the file shortcut
1726            * @throws PortalException if the file shortcut could not be found
1727            * @throws SystemException if a system exception occurred
1728            */
1729            public com.liferay.portlet.documentlibrary.model.DLFileShortcut moveFileShortcutToTrash(
1730                    long fileShortcutId)
1731                    throws com.liferay.portal.kernel.exception.PortalException,
1732                            com.liferay.portal.kernel.exception.SystemException;
1733    
1734            /**
1735            * Moves the folder to the new parent folder with the primary key.
1736            *
1737            * @param folderId the primary key of the folder
1738            * @param parentFolderId the primary key of the new parent folder
1739            * @param serviceContext the service context to be applied
1740            * @return the file entry
1741            * @throws PortalException if the folder could not be found
1742            * @throws SystemException if a system exception occurred
1743            */
1744            public com.liferay.portal.kernel.repository.model.Folder moveFolder(
1745                    long folderId, long parentFolderId,
1746                    com.liferay.portal.service.ServiceContext serviceContext)
1747                    throws com.liferay.portal.kernel.exception.PortalException,
1748                            com.liferay.portal.kernel.exception.SystemException;
1749    
1750            /**
1751            * Moves the folder with the primary key from the trash portlet to the new
1752            * parent folder with the primary key.
1753            *
1754            * @param folderId the primary key of the folder
1755            * @param parentFolderId the primary key of the new parent folder
1756            * @param serviceContext the service context to be applied
1757            * @return the file entry
1758            * @throws PortalException if the folder could not be found
1759            * @throws SystemException if a system exception occurred
1760            */
1761            public com.liferay.portal.kernel.repository.model.Folder moveFolderFromTrash(
1762                    long folderId, long parentFolderId,
1763                    com.liferay.portal.service.ServiceContext serviceContext)
1764                    throws com.liferay.portal.kernel.exception.PortalException,
1765                            com.liferay.portal.kernel.exception.SystemException;
1766    
1767            /**
1768            * Moves the folder with the primary key to the trash portlet.
1769            *
1770            * @param folderId the primary key of the folder
1771            * @return the file entry
1772            * @throws PortalException if the folder could not be found
1773            * @throws SystemException if a system exception occurred
1774            */
1775            public com.liferay.portal.kernel.repository.model.Folder moveFolderToTrash(
1776                    long folderId)
1777                    throws com.liferay.portal.kernel.exception.PortalException,
1778                            com.liferay.portal.kernel.exception.SystemException;
1779    
1780            /**
1781            * Refreshes the lock for the file entry. This method is primarily used by
1782            * WebDAV.
1783            *
1784            * @param lockUuid the lock's UUID
1785            * @param companyId the primary key of the file entry's company
1786            * @param expirationTime the time in milliseconds before the lock expires.
1787            If the value is <code>0</code>, the default expiration time will
1788            be used from <code>portal.properties>.
1789            * @return the lock object
1790            * @throws PortalException if the file entry or lock could not be found
1791            * @throws SystemException if a system exception occurred
1792            */
1793            public com.liferay.portal.model.Lock refreshFileEntryLock(
1794                    java.lang.String lockUuid, long companyId, long expirationTime)
1795                    throws com.liferay.portal.kernel.exception.PortalException,
1796                            com.liferay.portal.kernel.exception.SystemException;
1797    
1798            /**
1799            * Refreshes the lock for the folder. This method is primarily used by
1800            * WebDAV.
1801            *
1802            * @param lockUuid the lock's UUID
1803            * @param companyId the primary key of the file entry's company
1804            * @param expirationTime the time in milliseconds before the lock expires.
1805            If the value is <code>0</code>, the default expiration time will
1806            be used from <code>portal.properties>.
1807            * @return the lock object
1808            * @throws PortalException if the folder or lock could not be found
1809            * @throws SystemException if a system exception occurred
1810            */
1811            public com.liferay.portal.model.Lock refreshFolderLock(
1812                    java.lang.String lockUuid, long companyId, long expirationTime)
1813                    throws com.liferay.portal.kernel.exception.PortalException,
1814                            com.liferay.portal.kernel.exception.SystemException;
1815    
1816            /**
1817            * Restores the file entry with the primary key from the trash portlet.
1818            *
1819            * @param fileEntryId the primary key of the file entry
1820            * @throws PortalException if the file entry could not be found
1821            * @throws SystemException if a system exception occurred
1822            */
1823            public void restoreFileEntryFromTrash(long fileEntryId)
1824                    throws com.liferay.portal.kernel.exception.PortalException,
1825                            com.liferay.portal.kernel.exception.SystemException;
1826    
1827            /**
1828            * Restores the file shortcut with the primary key from the trash portlet.
1829            *
1830            * @param fileShortcutId the primary key of the file shortcut
1831            * @throws PortalException if the file shortcut could not be found
1832            * @throws SystemException if a system exception occurred
1833            */
1834            public void restoreFileShortcutFromTrash(long fileShortcutId)
1835                    throws com.liferay.portal.kernel.exception.PortalException,
1836                            com.liferay.portal.kernel.exception.SystemException;
1837    
1838            /**
1839            * Restores the folder with the primary key from the trash portlet.
1840            *
1841            * @param folderId the primary key of the folder
1842            * @throws PortalException if the folder could not be found
1843            * @throws SystemException if a system exception occurred
1844            */
1845            public void restoreFolderFromTrash(long folderId)
1846                    throws com.liferay.portal.kernel.exception.PortalException,
1847                            com.liferay.portal.kernel.exception.SystemException;
1848    
1849            /**
1850            * Reverts the file entry to a previous version. A new version will be
1851            * created based on the previous version and metadata.
1852            *
1853            * @param fileEntryId the primary key of the file entry
1854            * @param version the version to revert back to
1855            * @param serviceContext the service context to be applied
1856            * @throws PortalException if the file entry or version could not be found
1857            * @throws SystemException if a system exception occurred
1858            */
1859            public void revertFileEntry(long fileEntryId, java.lang.String version,
1860                    com.liferay.portal.service.ServiceContext serviceContext)
1861                    throws com.liferay.portal.kernel.exception.PortalException,
1862                            com.liferay.portal.kernel.exception.SystemException;
1863    
1864            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1865            public com.liferay.portal.kernel.search.Hits search(long repositoryId,
1866                    long creatorUserId, int status, int start, int end)
1867                    throws com.liferay.portal.kernel.exception.PortalException,
1868                            com.liferay.portal.kernel.exception.SystemException;
1869    
1870            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1871            public com.liferay.portal.kernel.search.Hits search(long repositoryId,
1872                    long creatorUserId, long folderId, java.lang.String[] mimeTypes,
1873                    int status, int start, int end)
1874                    throws com.liferay.portal.kernel.exception.PortalException,
1875                            com.liferay.portal.kernel.exception.SystemException;
1876    
1877            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1878            public com.liferay.portal.kernel.search.Hits search(long repositoryId,
1879                    com.liferay.portal.kernel.search.SearchContext searchContext)
1880                    throws com.liferay.portal.kernel.search.SearchException;
1881    
1882            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1883            public com.liferay.portal.kernel.search.Hits search(long repositoryId,
1884                    com.liferay.portal.kernel.search.SearchContext searchContext,
1885                    com.liferay.portal.kernel.search.Query query)
1886                    throws com.liferay.portal.kernel.search.SearchException;
1887    
1888            /**
1889            * Subscribe the user to changes in documents of the file entry type. This
1890            * method is only supported by the Liferay repository.
1891            *
1892            * @param groupId the primary key of the file entry type's group
1893            * @param fileEntryTypeId the primary key of the file entry type
1894            * @throws PortalException if the user or group could not be found, or if
1895            subscribing was not permissible
1896            * @throws SystemException if a system exception occurred
1897            */
1898            public void subscribeFileEntryType(long groupId, long fileEntryTypeId)
1899                    throws com.liferay.portal.kernel.exception.PortalException,
1900                            com.liferay.portal.kernel.exception.SystemException;
1901    
1902            /**
1903            * Subscribe the user to document changes in the folder. This method is only
1904            * supported by the Liferay repository.
1905            *
1906            * @param groupId the primary key of the folder's group
1907            * @param folderId the primary key of the folder
1908            * @throws PortalException if the user or group could not be found, or if
1909            subscribing was not permissible
1910            * @throws SystemException if a system exception occurred
1911            */
1912            public void subscribeFolder(long groupId, long folderId)
1913                    throws com.liferay.portal.kernel.exception.PortalException,
1914                            com.liferay.portal.kernel.exception.SystemException;
1915    
1916            /**
1917            * @deprecated As of 6.2.0, replaced by {@link #checkInFileEntry(long,
1918            boolean, String, ServiceContext)}.
1919            */
1920            public void unlockFileEntry(long fileEntryId)
1921                    throws com.liferay.portal.kernel.exception.PortalException,
1922                            com.liferay.portal.kernel.exception.SystemException;
1923    
1924            /**
1925            * @deprecated As of 6.2.0, replaced by {@link #checkInFileEntry(long,
1926            String)}.
1927            */
1928            public void unlockFileEntry(long fileEntryId, java.lang.String lockUuid)
1929                    throws com.liferay.portal.kernel.exception.PortalException,
1930                            com.liferay.portal.kernel.exception.SystemException;
1931    
1932            /**
1933            * Unlocks the folder. This method is primarily used by WebDAV.
1934            *
1935            * @param repositoryId the primary key of the repository
1936            * @param folderId the primary key of the folder
1937            * @param lockUuid the lock's UUID
1938            * @throws PortalException if the repository or folder could not be found
1939            * @throws SystemException if a system exception occurred
1940            */
1941            public void unlockFolder(long repositoryId, long folderId,
1942                    java.lang.String lockUuid)
1943                    throws com.liferay.portal.kernel.exception.PortalException,
1944                            com.liferay.portal.kernel.exception.SystemException;
1945    
1946            /**
1947            * Unlocks the folder. This method is primarily used by WebDAV.
1948            *
1949            * @param repositoryId the primary key of the repository
1950            * @param parentFolderId the primary key of the parent folder
1951            * @param name the folder's name
1952            * @param lockUuid the lock's UUID
1953            * @throws PortalException if the repository or folder could not be found
1954            * @throws SystemException if a system exception occurred
1955            */
1956            public void unlockFolder(long repositoryId, long parentFolderId,
1957                    java.lang.String name, java.lang.String lockUuid)
1958                    throws com.liferay.portal.kernel.exception.PortalException,
1959                            com.liferay.portal.kernel.exception.SystemException;
1960    
1961            /**
1962            * Unsubscribe the user from changes in documents of the file entry type.
1963            * This method is only supported by the Liferay repository.
1964            *
1965            * @param groupId the primary key of the file entry type's group
1966            * @param fileEntryTypeId the primary key of the file entry type
1967            * @throws PortalException if the user or group could not be found, or if
1968            unsubscribing was not permissible
1969            * @throws SystemException if a system exception occurred
1970            */
1971            public void unsubscribeFileEntryType(long groupId, long fileEntryTypeId)
1972                    throws com.liferay.portal.kernel.exception.PortalException,
1973                            com.liferay.portal.kernel.exception.SystemException;
1974    
1975            /**
1976            * Unsubscribe the user from document changes in the folder. This method is
1977            * only supported by the Liferay repository.
1978            *
1979            * @param groupId the primary key of the folder's group
1980            * @param folderId the primary key of the folder
1981            * @throws PortalException if the user or group could not be found, or if
1982            unsubscribing was not permissible
1983            * @throws SystemException if a system exception occurred
1984            */
1985            public void unsubscribeFolder(long groupId, long folderId)
1986                    throws com.liferay.portal.kernel.exception.PortalException,
1987                            com.liferay.portal.kernel.exception.SystemException;
1988    
1989            /**
1990            * Updates a file entry and associated metadata based on a byte array
1991            * object. If the file data is <code>null</code>, then only the associated
1992            * metadata (i.e., <code>title</code>, <code>description</code>, and
1993            * parameters in the <code>serviceContext</code>) will be updated.
1994            *
1995            * <p>
1996            * This method takes two file names, the <code>sourceFileName</code> and the
1997            * <code>title</code>. The <code>sourceFileName</code> corresponds to the
1998            * name of the actual file being uploaded. The <code>title</code>
1999            * corresponds to a name the client wishes to assign this file after it has
2000            * been uploaded to the portal.
2001            * </p>
2002            *
2003            * @param fileEntryId the primary key of the file entry
2004            * @param sourceFileName the original file's name (optionally
2005            <code>null</code>)
2006            * @param mimeType the file's MIME type (optionally <code>null</code>)
2007            * @param title the new name to be assigned to the file (optionally <code>
2008            <code>null</code></code>)
2009            * @param description the file's new description
2010            * @param changeLog the file's version change log (optionally
2011            <code>null</code>)
2012            * @param majorVersion whether the new file version is a major version
2013            * @param bytes the file's data (optionally <code>null</code>)
2014            * @param serviceContext the service context to be applied. Can set the
2015            asset category IDs, asset tag names, and expando bridge
2016            attributes for the file entry. In a Liferay repository, it may
2017            include:  <ul> <li> fileEntryTypeId - ID for a custom file entry
2018            type </li> <li> fieldsMap - mapping for fields associated with a
2019            custom file entry type </li> </ul>
2020            * @return the file entry
2021            * @throws PortalException if the file entry could not be found
2022            * @throws SystemException if a system exception occurred
2023            */
2024            public com.liferay.portal.kernel.repository.model.FileEntry updateFileEntry(
2025                    long fileEntryId, java.lang.String sourceFileName,
2026                    java.lang.String mimeType, java.lang.String title,
2027                    java.lang.String description, java.lang.String changeLog,
2028                    boolean majorVersion, byte[] bytes,
2029                    com.liferay.portal.service.ServiceContext serviceContext)
2030                    throws com.liferay.portal.kernel.exception.PortalException,
2031                            com.liferay.portal.kernel.exception.SystemException;
2032    
2033            /**
2034            * Updates a file entry and associated metadata based on a {@link
2035            * java.io.File} object. If the file data is <code>null</code>, then only
2036            * the associated metadata (i.e., <code>title</code>,
2037            * <code>description</code>, and parameters in the
2038            * <code>serviceContext</code>) will be updated.
2039            *
2040            * <p>
2041            * This method takes two file names, the <code>sourceFileName</code> and the
2042            * <code>title</code>. The <code>sourceFileName</code> corresponds to the
2043            * name of the actual file being uploaded. The <code>title</code>
2044            * corresponds to a name the client wishes to assign this file after it has
2045            * been uploaded to the portal.
2046            * </p>
2047            *
2048            * @param fileEntryId the primary key of the file entry
2049            * @param sourceFileName the original file's name (optionally
2050            <code>null</code>)
2051            * @param mimeType the file's MIME type (optionally <code>null</code>)
2052            * @param title the new name to be assigned to the file (optionally <code>
2053            <code>null</code></code>)
2054            * @param description the file's new description
2055            * @param changeLog the file's version change log (optionally
2056            <code>null</code>)
2057            * @param majorVersion whether the new file version is a major version
2058            * @param file the file's data (optionally <code>null</code>)
2059            * @param serviceContext the service context to be applied. Can set the
2060            asset category IDs, asset tag names, and expando bridge
2061            attributes for the file entry. In a Liferay repository, it may
2062            include:  <ul> <li> fileEntryTypeId - ID for a custom file entry
2063            type </li> <li> fieldsMap - mapping for fields associated with a
2064            custom file entry type </li> </ul>
2065            * @return the file entry
2066            * @throws PortalException if the file entry could not be found
2067            * @throws SystemException if a system exception occurred
2068            */
2069            public com.liferay.portal.kernel.repository.model.FileEntry updateFileEntry(
2070                    long fileEntryId, java.lang.String sourceFileName,
2071                    java.lang.String mimeType, java.lang.String title,
2072                    java.lang.String description, java.lang.String changeLog,
2073                    boolean majorVersion, java.io.File file,
2074                    com.liferay.portal.service.ServiceContext serviceContext)
2075                    throws com.liferay.portal.kernel.exception.PortalException,
2076                            com.liferay.portal.kernel.exception.SystemException;
2077    
2078            /**
2079            * Updates a file entry and associated metadata based on an {@link
2080            * InputStream} object. If the file data is <code>null</code>, then only the
2081            * associated metadata (i.e., <code>title</code>, <code>description</code>,
2082            * and parameters in the <code>serviceContext</code>) will be updated.
2083            *
2084            * <p>
2085            * This method takes two file names, the <code>sourceFileName</code> and the
2086            * <code>title</code>. The <code>sourceFileName</code> corresponds to the
2087            * name of the actual file being uploaded. The <code>title</code>
2088            * corresponds to a name the client wishes to assign this file after it has
2089            * been uploaded to the portal.
2090            * </p>
2091            *
2092            * @param fileEntryId the primary key of the file entry
2093            * @param sourceFileName the original file's name (optionally
2094            <code>null</code>)
2095            * @param mimeType the file's MIME type (optionally <code>null</code>)
2096            * @param title the new name to be assigned to the file (optionally <code>
2097            <code>null</code></code>)
2098            * @param description the file's new description
2099            * @param changeLog the file's version change log (optionally
2100            <code>null</code>)
2101            * @param majorVersion whether the new file version is a major version
2102            * @param is the file's data (optionally <code>null</code>)
2103            * @param size the file's size (optionally <code>0</code>)
2104            * @param serviceContext the service context to be applied. Can set the
2105            asset category IDs, asset tag names, and expando bridge
2106            attributes for the file entry. In a Liferay repository, it may
2107            include:  <ul> <li> fileEntryTypeId - ID for a custom file entry
2108            type </li> <li> fieldsMap - mapping for fields associated with a
2109            custom file entry type </li> </ul>
2110            * @return the file entry
2111            * @throws PortalException if the file entry could not be found
2112            * @throws SystemException if a system exception occurred
2113            */
2114            public com.liferay.portal.kernel.repository.model.FileEntry updateFileEntry(
2115                    long fileEntryId, java.lang.String sourceFileName,
2116                    java.lang.String mimeType, java.lang.String title,
2117                    java.lang.String description, java.lang.String changeLog,
2118                    boolean majorVersion, java.io.InputStream is, long size,
2119                    com.liferay.portal.service.ServiceContext serviceContext)
2120                    throws com.liferay.portal.kernel.exception.PortalException,
2121                            com.liferay.portal.kernel.exception.SystemException;
2122    
2123            public com.liferay.portal.kernel.repository.model.FileEntry updateFileEntryAndCheckIn(
2124                    long fileEntryId, java.lang.String sourceFileName,
2125                    java.lang.String mimeType, java.lang.String title,
2126                    java.lang.String description, java.lang.String changeLog,
2127                    boolean majorVersion, java.io.File file,
2128                    com.liferay.portal.service.ServiceContext serviceContext)
2129                    throws com.liferay.portal.kernel.exception.PortalException,
2130                            com.liferay.portal.kernel.exception.SystemException;
2131    
2132            public com.liferay.portal.kernel.repository.model.FileEntry updateFileEntryAndCheckIn(
2133                    long fileEntryId, java.lang.String sourceFileName,
2134                    java.lang.String mimeType, java.lang.String title,
2135                    java.lang.String description, java.lang.String changeLog,
2136                    boolean majorVersion, java.io.InputStream is, long size,
2137                    com.liferay.portal.service.ServiceContext serviceContext)
2138                    throws com.liferay.portal.kernel.exception.PortalException,
2139                            com.liferay.portal.kernel.exception.SystemException;
2140    
2141            /**
2142            * Updates a file shortcut to the existing file entry. This method is only
2143            * supported by the Liferay repository.
2144            *
2145            * @param fileShortcutId the primary key of the file shortcut
2146            * @param folderId the primary key of the file shortcut's parent folder
2147            * @param toFileEntryId the primary key of the file shortcut's file entry
2148            * @param serviceContext the service context to be applied. Can set the
2149            asset category IDs, asset tag names, and expando bridge
2150            attributes for the file entry.
2151            * @return the file shortcut
2152            * @throws PortalException if the file shortcut, folder, or file entry could
2153            not be found
2154            * @throws SystemException if a system exception occurred
2155            */
2156            public com.liferay.portlet.documentlibrary.model.DLFileShortcut updateFileShortcut(
2157                    long fileShortcutId, long folderId, long toFileEntryId,
2158                    com.liferay.portal.service.ServiceContext serviceContext)
2159                    throws com.liferay.portal.kernel.exception.PortalException,
2160                            com.liferay.portal.kernel.exception.SystemException;
2161    
2162            /**
2163            * Updates the folder.
2164            *
2165            * @param folderId the primary key of the folder
2166            * @param name the folder's new name
2167            * @param description the folder's new description
2168            * @param serviceContext the service context to be applied. In a Liferay
2169            repository, it may include:  <ul> <li> defaultFileEntryTypeId -
2170            the file entry type to default all Liferay file entries to </li>
2171            <li> dlFileEntryTypesSearchContainerPrimaryKeys - a
2172            comma-delimited list of file entry type primary keys allowed in
2173            the given folder and all descendants </li> <li>
2174            overrideFileEntryTypes - boolean specifying whether to override
2175            ancestral folder's restriction of file entry types allowed </li>
2176            <li> workflowDefinitionXYZ - the workflow definition name
2177            specified per file entry type. The parameter name must be the
2178            string <code>workflowDefinition</code> appended by the <code>
2179            fileEntryTypeId</code> (optionally <code>0</code>). </li> </ul>
2180            * @return the folder
2181            * @throws PortalException if the current or new parent folder could not be
2182            found or if the new parent folder's information was invalid
2183            * @throws SystemException if a system exception occurred
2184            */
2185            public com.liferay.portal.kernel.repository.model.Folder updateFolder(
2186                    long folderId, java.lang.String name, java.lang.String description,
2187                    com.liferay.portal.service.ServiceContext serviceContext)
2188                    throws com.liferay.portal.kernel.exception.PortalException,
2189                            com.liferay.portal.kernel.exception.SystemException;
2190    
2191            /**
2192            * Returns <code>true</code> if the file entry is checked out. This method
2193            * is primarily used by WebDAV.
2194            *
2195            * @param repositoryId the primary key for the repository
2196            * @param fileEntryId the primary key for the file entry
2197            * @param lockUuid the lock's UUID
2198            * @return <code>true</code> if the file entry is checked out;
2199            <code>false</code> otherwise
2200            * @throws PortalException if the file entry could not be found
2201            * @throws SystemException if a system exception occurred
2202            */
2203            public boolean verifyFileEntryCheckOut(long repositoryId, long fileEntryId,
2204                    java.lang.String lockUuid)
2205                    throws com.liferay.portal.kernel.exception.PortalException,
2206                            com.liferay.portal.kernel.exception.SystemException;
2207    
2208            public boolean verifyFileEntryLock(long repositoryId, long fileEntryId,
2209                    java.lang.String lockUuid)
2210                    throws com.liferay.portal.kernel.exception.PortalException,
2211                            com.liferay.portal.kernel.exception.SystemException;
2212    
2213            /**
2214            * Returns <code>true</code> if the inheritable lock exists. This method is
2215            * primarily used by WebDAV.
2216            *
2217            * @param repositoryId the primary key for the repository
2218            * @param folderId the primary key for the folder
2219            * @param lockUuid the lock's UUID
2220            * @return <code>true</code> if the inheritable lock exists;
2221            <code>false</code> otherwise
2222            * @throws PortalException if the folder could not be found
2223            * @throws SystemException if a system exception occurred
2224            */
2225            public boolean verifyInheritableLock(long repositoryId, long folderId,
2226                    java.lang.String lockUuid)
2227                    throws com.liferay.portal.kernel.exception.PortalException,
2228                            com.liferay.portal.kernel.exception.SystemException;
2229    }