001    /**
002     * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.journal.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
022    import com.liferay.portal.kernel.security.access.control.AccessControlled;
023    import com.liferay.portal.kernel.transaction.Isolation;
024    import com.liferay.portal.kernel.transaction.Propagation;
025    import com.liferay.portal.kernel.transaction.Transactional;
026    import com.liferay.portal.service.BaseService;
027    
028    /**
029     * Provides the remote service interface for JournalFolder. 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 JournalFolderServiceUtil
035     * @see com.liferay.portlet.journal.service.base.JournalFolderServiceBaseImpl
036     * @see com.liferay.portlet.journal.service.impl.JournalFolderServiceImpl
037     * @generated
038     */
039    @AccessControlled
040    @JSONWebService
041    @ProviderType
042    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
043            PortalException.class, SystemException.class})
044    public interface JournalFolderService extends BaseService {
045            /*
046             * NOTE FOR DEVELOPERS:
047             *
048             * Never modify or reference this interface directly. Always use {@link JournalFolderServiceUtil} to access the journal folder remote service. Add custom service methods to {@link com.liferay.portlet.journal.service.impl.JournalFolderServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
049             */
050            public com.liferay.portlet.journal.model.JournalFolder addFolder(
051                    long groupId, long parentFolderId, java.lang.String name,
052                    java.lang.String description,
053                    com.liferay.portal.service.ServiceContext serviceContext)
054                    throws PortalException;
055    
056            public void deleteFolder(long folderId) throws PortalException;
057    
058            public void deleteFolder(long folderId, boolean includeTrashedEntries)
059                    throws PortalException;
060    
061            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
062            public com.liferay.portlet.journal.model.JournalFolder fetchFolder(
063                    long folderId) throws PortalException;
064    
065            /**
066            * Returns the Spring bean ID for this bean.
067            *
068            * @return the Spring bean ID for this bean
069            */
070            public java.lang.String getBeanIdentifier();
071    
072            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
073            public java.util.List<com.liferay.portlet.dynamicdatamapping.model.DDMStructure> getDDMStructures(
074                    long[] groupIds, long folderId, int restrictionType)
075                    throws PortalException;
076    
077            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
078            public com.liferay.portlet.journal.model.JournalFolder getFolder(
079                    long folderId) throws PortalException;
080    
081            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
082            public java.util.List<java.lang.Long> getFolderIds(long groupId,
083                    long folderId) throws PortalException;
084    
085            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
086            public java.util.List<com.liferay.portlet.journal.model.JournalFolder> getFolders(
087                    long groupId);
088    
089            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
090            public java.util.List<com.liferay.portlet.journal.model.JournalFolder> getFolders(
091                    long groupId, long parentFolderId);
092    
093            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
094            public java.util.List<com.liferay.portlet.journal.model.JournalFolder> getFolders(
095                    long groupId, long parentFolderId, int start, int end);
096    
097            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
098            public java.util.List<com.liferay.portlet.journal.model.JournalFolder> getFolders(
099                    long groupId, long parentFolderId, int status);
100    
101            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
102            public java.util.List<com.liferay.portlet.journal.model.JournalFolder> getFolders(
103                    long groupId, long parentFolderId, int status, int start, int end);
104    
105            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
106            public java.util.List<java.lang.Object> getFoldersAndArticles(
107                    long groupId, long folderId, int start, int end,
108                    com.liferay.portal.kernel.util.OrderByComparator<?> obc);
109    
110            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
111            public java.util.List<java.lang.Object> getFoldersAndArticles(
112                    long groupId, long folderId, int status, int start, int end,
113                    com.liferay.portal.kernel.util.OrderByComparator<?> obc);
114    
115            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
116            public int getFoldersAndArticlesCount(long groupId, long folderId);
117    
118            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
119            public int getFoldersAndArticlesCount(long groupId, long folderId,
120                    int status);
121    
122            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
123            public int getFoldersAndArticlesCount(long groupId,
124                    java.util.List<java.lang.Long> folderIds, int status);
125    
126            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
127            public int getFoldersCount(long groupId, long parentFolderId);
128    
129            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
130            public int getFoldersCount(long groupId, long parentFolderId, int status);
131    
132            /**
133            * @deprecated As of 7.0.0, replaced by {@link #getSubfolderIds(List, long,
134            long, boolean)}
135            */
136            @java.lang.Deprecated
137            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
138            public void getSubfolderIds(java.util.List<java.lang.Long> folderIds,
139                    long groupId, long folderId);
140    
141            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
142            public void getSubfolderIds(java.util.List<java.lang.Long> folderIds,
143                    long groupId, long folderId, boolean recurse);
144    
145            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
146            public java.util.List<java.lang.Long> getSubfolderIds(long groupId,
147                    long folderId, boolean recurse);
148    
149            public com.liferay.portlet.journal.model.JournalFolder moveFolder(
150                    long folderId, long parentFolderId,
151                    com.liferay.portal.service.ServiceContext serviceContext)
152                    throws PortalException;
153    
154            public com.liferay.portlet.journal.model.JournalFolder moveFolderFromTrash(
155                    long folderId, long parentFolderId,
156                    com.liferay.portal.service.ServiceContext serviceContext)
157                    throws PortalException;
158    
159            public com.liferay.portlet.journal.model.JournalFolder moveFolderToTrash(
160                    long folderId) throws PortalException;
161    
162            public void restoreFolderFromTrash(long folderId) throws PortalException;
163    
164            /**
165            * Sets the Spring bean ID for this bean.
166            *
167            * @param beanIdentifier the Spring bean ID for this bean
168            */
169            public void setBeanIdentifier(java.lang.String beanIdentifier);
170    
171            public void subscribe(long groupId, long folderId)
172                    throws PortalException;
173    
174            public void unsubscribe(long groupId, long folderId)
175                    throws PortalException;
176    
177            public com.liferay.portlet.journal.model.JournalFolder updateFolder(
178                    long groupId, long folderId, long parentFolderId,
179                    java.lang.String name, java.lang.String description,
180                    long[] ddmStructureIds, int restrictionType,
181                    boolean mergeWithParentFolder,
182                    com.liferay.portal.service.ServiceContext serviceContext)
183                    throws PortalException;
184    
185            public com.liferay.portlet.journal.model.JournalFolder updateFolder(
186                    long groupId, long folderId, long parentFolderId,
187                    java.lang.String name, java.lang.String description,
188                    boolean mergeWithParentFolder,
189                    com.liferay.portal.service.ServiceContext serviceContext)
190                    throws PortalException;
191    }