001    /**
002     * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
003     *
004     * The contents of this file are subject to the terms of the Liferay Enterprise
005     * Subscription License ("License"). You may not use this file except in
006     * compliance with the License. You can obtain a copy of the License by
007     * contacting Liferay, Inc. See the License for the specific language governing
008     * permissions and limitations under the License, including but not limited to
009     * distribution rights of the Software.
010     *
011     *
012     *
013     */
014    
015    package com.liferay.portlet.messageboards.service;
016    
017    import com.liferay.portal.kernel.annotation.Isolation;
018    import com.liferay.portal.kernel.annotation.Propagation;
019    import com.liferay.portal.kernel.annotation.Transactional;
020    import com.liferay.portal.kernel.exception.PortalException;
021    import com.liferay.portal.kernel.exception.SystemException;
022    
023    /**
024     * The interface for the message boards category local service.
025     *
026     * <p>
027     * Never modify or reference this interface directly. Always use {@link MBCategoryLocalServiceUtil} to access the message boards category local service. Add custom service methods to {@link com.liferay.portlet.messageboards.service.impl.MBCategoryLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
028     * </p>
029     *
030     * <p>
031     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
032     * </p>
033     *
034     * @author Brian Wing Shun Chan
035     * @see MBCategoryLocalServiceUtil
036     * @see com.liferay.portlet.messageboards.service.base.MBCategoryLocalServiceBaseImpl
037     * @see com.liferay.portlet.messageboards.service.impl.MBCategoryLocalServiceImpl
038     * @generated
039     */
040    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
041            PortalException.class, SystemException.class})
042    public interface MBCategoryLocalService {
043            /**
044            * Adds the message boards category to the database. Also notifies the appropriate model listeners.
045            *
046            * @param mbCategory the message boards category to add
047            * @return the message boards category that was added
048            * @throws SystemException if a system exception occurred
049            */
050            public com.liferay.portlet.messageboards.model.MBCategory addMBCategory(
051                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
052                    throws com.liferay.portal.kernel.exception.SystemException;
053    
054            /**
055            * Creates a new message boards category with the primary key. Does not add the message boards category to the database.
056            *
057            * @param categoryId the primary key for the new message boards category
058            * @return the new message boards category
059            */
060            public com.liferay.portlet.messageboards.model.MBCategory createMBCategory(
061                    long categoryId);
062    
063            /**
064            * Deletes the message boards category with the primary key from the database. Also notifies the appropriate model listeners.
065            *
066            * @param categoryId the primary key of the message boards category to delete
067            * @throws PortalException if a message boards category with the primary key could not be found
068            * @throws SystemException if a system exception occurred
069            */
070            public void deleteMBCategory(long categoryId)
071                    throws com.liferay.portal.kernel.exception.PortalException,
072                            com.liferay.portal.kernel.exception.SystemException;
073    
074            /**
075            * Deletes the message boards category from the database. Also notifies the appropriate model listeners.
076            *
077            * @param mbCategory the message boards category to delete
078            * @throws SystemException if a system exception occurred
079            */
080            public void deleteMBCategory(
081                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
082                    throws com.liferay.portal.kernel.exception.SystemException;
083    
084            /**
085            * Performs a dynamic query on the database and returns the matching rows.
086            *
087            * @param dynamicQuery the dynamic query to search with
088            * @return the matching rows
089            * @throws SystemException if a system exception occurred
090            */
091            @SuppressWarnings("rawtypes")
092            public java.util.List dynamicQuery(
093                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
094                    throws com.liferay.portal.kernel.exception.SystemException;
095    
096            /**
097            * Performs a dynamic query on the database and returns a range of the matching rows.
098            *
099            * <p>
100            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
101            * </p>
102            *
103            * @param dynamicQuery the dynamic query to search with
104            * @param start the lower bound of the range of model instances to return
105            * @param end the upper bound of the range of model instances to return (not inclusive)
106            * @return the range of matching rows
107            * @throws SystemException if a system exception occurred
108            */
109            @SuppressWarnings("rawtypes")
110            public java.util.List dynamicQuery(
111                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
112                    int end) throws com.liferay.portal.kernel.exception.SystemException;
113    
114            /**
115            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
116            *
117            * <p>
118            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
119            * </p>
120            *
121            * @param dynamicQuery the dynamic query to search with
122            * @param start the lower bound of the range of model instances to return
123            * @param end the upper bound of the range of model instances to return (not inclusive)
124            * @param orderByComparator the comparator to order the results by
125            * @return the ordered range of matching rows
126            * @throws SystemException if a system exception occurred
127            */
128            @SuppressWarnings("rawtypes")
129            public java.util.List dynamicQuery(
130                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
131                    int end,
132                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
133                    throws com.liferay.portal.kernel.exception.SystemException;
134    
135            /**
136            * Counts the number of rows that match the dynamic query.
137            *
138            * @param dynamicQuery the dynamic query to search with
139            * @return the number of rows that match the dynamic query
140            * @throws SystemException if a system exception occurred
141            */
142            public long dynamicQueryCount(
143                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
144                    throws com.liferay.portal.kernel.exception.SystemException;
145    
146            /**
147            * Gets the message boards category with the primary key.
148            *
149            * @param categoryId the primary key of the message boards category to get
150            * @return the message boards category
151            * @throws PortalException if a message boards category with the primary key could not be found
152            * @throws SystemException if a system exception occurred
153            */
154            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
155            public com.liferay.portlet.messageboards.model.MBCategory getMBCategory(
156                    long categoryId)
157                    throws com.liferay.portal.kernel.exception.PortalException,
158                            com.liferay.portal.kernel.exception.SystemException;
159    
160            /**
161            * Gets the message boards category with the UUID and group id.
162            *
163            * @param uuid the UUID of message boards category to get
164            * @param groupId the group id of the message boards category to get
165            * @return the message boards category
166            * @throws PortalException if a message boards category with the UUID and group id could not be found
167            * @throws SystemException if a system exception occurred
168            */
169            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
170            public com.liferay.portlet.messageboards.model.MBCategory getMBCategoryByUuidAndGroupId(
171                    java.lang.String uuid, long groupId)
172                    throws com.liferay.portal.kernel.exception.PortalException,
173                            com.liferay.portal.kernel.exception.SystemException;
174    
175            /**
176            * Gets a range of all the message boards categories.
177            *
178            * <p>
179            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
180            * </p>
181            *
182            * @param start the lower bound of the range of message boards categories to return
183            * @param end the upper bound of the range of message boards categories to return (not inclusive)
184            * @return the range of message boards categories
185            * @throws SystemException if a system exception occurred
186            */
187            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
188            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getMBCategories(
189                    int start, int end)
190                    throws com.liferay.portal.kernel.exception.SystemException;
191    
192            /**
193            * Gets the number of message boards categories.
194            *
195            * @return the number of message boards categories
196            * @throws SystemException if a system exception occurred
197            */
198            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
199            public int getMBCategoriesCount()
200                    throws com.liferay.portal.kernel.exception.SystemException;
201    
202            /**
203            * Updates the message boards category in the database. Also notifies the appropriate model listeners.
204            *
205            * @param mbCategory the message boards category to update
206            * @return the message boards category that was updated
207            * @throws SystemException if a system exception occurred
208            */
209            public com.liferay.portlet.messageboards.model.MBCategory updateMBCategory(
210                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
211                    throws com.liferay.portal.kernel.exception.SystemException;
212    
213            /**
214            * Updates the message boards category in the database. Also notifies the appropriate model listeners.
215            *
216            * @param mbCategory the message boards category to update
217            * @param merge whether to merge the message boards category with the current session. See {@link com.liferay.portal.service.persistence.BatchSession#update(com.liferay.portal.kernel.dao.orm.Session, com.liferay.portal.model.BaseModel, boolean)} for an explanation.
218            * @return the message boards category that was updated
219            * @throws SystemException if a system exception occurred
220            */
221            public com.liferay.portlet.messageboards.model.MBCategory updateMBCategory(
222                    com.liferay.portlet.messageboards.model.MBCategory mbCategory,
223                    boolean merge)
224                    throws com.liferay.portal.kernel.exception.SystemException;
225    
226            public com.liferay.portlet.messageboards.model.MBCategory addCategory(
227                    long userId, long parentCategoryId, java.lang.String name,
228                    java.lang.String description, java.lang.String emailAddress,
229                    java.lang.String inProtocol, java.lang.String inServerName,
230                    int inServerPort, boolean inUseSSL, java.lang.String inUserName,
231                    java.lang.String inPassword, int inReadInterval,
232                    java.lang.String outEmailAddress, boolean outCustom,
233                    java.lang.String outServerName, int outServerPort, boolean outUseSSL,
234                    java.lang.String outUserName, java.lang.String outPassword,
235                    boolean mailingListActive,
236                    com.liferay.portal.service.ServiceContext serviceContext)
237                    throws com.liferay.portal.kernel.exception.PortalException,
238                            com.liferay.portal.kernel.exception.SystemException;
239    
240            public void addCategoryResources(long categoryId,
241                    boolean addCommunityPermissions, boolean addGuestPermissions)
242                    throws com.liferay.portal.kernel.exception.PortalException,
243                            com.liferay.portal.kernel.exception.SystemException;
244    
245            public void addCategoryResources(long categoryId,
246                    java.lang.String[] communityPermissions,
247                    java.lang.String[] guestPermissions)
248                    throws com.liferay.portal.kernel.exception.PortalException,
249                            com.liferay.portal.kernel.exception.SystemException;
250    
251            public void addCategoryResources(
252                    com.liferay.portlet.messageboards.model.MBCategory category,
253                    boolean addCommunityPermissions, boolean addGuestPermissions)
254                    throws com.liferay.portal.kernel.exception.PortalException,
255                            com.liferay.portal.kernel.exception.SystemException;
256    
257            public void addCategoryResources(
258                    com.liferay.portlet.messageboards.model.MBCategory category,
259                    java.lang.String[] communityPermissions,
260                    java.lang.String[] guestPermissions)
261                    throws com.liferay.portal.kernel.exception.PortalException,
262                            com.liferay.portal.kernel.exception.SystemException;
263    
264            public void deleteCategories(long groupId)
265                    throws com.liferay.portal.kernel.exception.PortalException,
266                            com.liferay.portal.kernel.exception.SystemException;
267    
268            public void deleteCategory(long categoryId)
269                    throws com.liferay.portal.kernel.exception.PortalException,
270                            com.liferay.portal.kernel.exception.SystemException;
271    
272            public void deleteCategory(
273                    com.liferay.portlet.messageboards.model.MBCategory category)
274                    throws com.liferay.portal.kernel.exception.PortalException,
275                            com.liferay.portal.kernel.exception.SystemException;
276    
277            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
278            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
279                    long groupId)
280                    throws com.liferay.portal.kernel.exception.SystemException;
281    
282            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
283            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
284                    long groupId, long parentCategoryId, int start, int end)
285                    throws com.liferay.portal.kernel.exception.SystemException;
286    
287            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
288            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
289                    long groupId, long[] parentCategoryIds, int start, int end)
290                    throws com.liferay.portal.kernel.exception.SystemException;
291    
292            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
293            public int getCategoriesCount(long groupId)
294                    throws com.liferay.portal.kernel.exception.SystemException;
295    
296            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
297            public int getCategoriesCount(long groupId, long parentCategoryId)
298                    throws com.liferay.portal.kernel.exception.SystemException;
299    
300            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
301            public int getCategoriesCount(long groupId, long[] parentCategoryIds)
302                    throws com.liferay.portal.kernel.exception.SystemException;
303    
304            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
305            public com.liferay.portlet.messageboards.model.MBCategory getCategory(
306                    long categoryId)
307                    throws com.liferay.portal.kernel.exception.PortalException,
308                            com.liferay.portal.kernel.exception.SystemException;
309    
310            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
311            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCompanyCategories(
312                    long companyId, int start, int end)
313                    throws com.liferay.portal.kernel.exception.SystemException;
314    
315            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
316            public int getCompanyCategoriesCount(long companyId)
317                    throws com.liferay.portal.kernel.exception.SystemException;
318    
319            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
320            public java.util.List<java.lang.Long> getSubcategoryIds(
321                    java.util.List<java.lang.Long> categoryIds, long groupId,
322                    long categoryId)
323                    throws com.liferay.portal.kernel.exception.SystemException;
324    
325            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
326            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getSubscribedCategories(
327                    long groupId, long userId, int start, int end)
328                    throws com.liferay.portal.kernel.exception.SystemException;
329    
330            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
331            public int getSubscribedCategoriesCount(long groupId, long userId)
332                    throws com.liferay.portal.kernel.exception.SystemException;
333    
334            public void subscribeCategory(long userId, long groupId, long categoryId)
335                    throws com.liferay.portal.kernel.exception.PortalException,
336                            com.liferay.portal.kernel.exception.SystemException;
337    
338            public void unsubscribeCategory(long userId, long groupId, long categoryId)
339                    throws com.liferay.portal.kernel.exception.PortalException,
340                            com.liferay.portal.kernel.exception.SystemException;
341    
342            public com.liferay.portlet.messageboards.model.MBCategory updateCategory(
343                    long categoryId, long parentCategoryId, java.lang.String name,
344                    java.lang.String description, java.lang.String emailAddress,
345                    java.lang.String inProtocol, java.lang.String inServerName,
346                    int inServerPort, boolean inUseSSL, java.lang.String inUserName,
347                    java.lang.String inPassword, int inReadInterval,
348                    java.lang.String outEmailAddress, boolean outCustom,
349                    java.lang.String outServerName, int outServerPort, boolean outUseSSL,
350                    java.lang.String outUserName, java.lang.String outPassword,
351                    boolean mailingListActive, boolean mergeWithParentCategory,
352                    com.liferay.portal.service.ServiceContext serviceContext)
353                    throws com.liferay.portal.kernel.exception.PortalException,
354                            com.liferay.portal.kernel.exception.SystemException;
355    }