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.messageboards.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.search.IndexableType;
022    import com.liferay.portal.kernel.transaction.Isolation;
023    import com.liferay.portal.kernel.transaction.Propagation;
024    import com.liferay.portal.kernel.transaction.Transactional;
025    import com.liferay.portal.model.SystemEventConstants;
026    import com.liferay.portal.service.BaseLocalService;
027    import com.liferay.portal.service.PersistedModelLocalService;
028    
029    /**
030     * Provides the local service interface for MBCategory. Methods of this
031     * service will not have security checks based on the propagated JAAS
032     * credentials because this service can only be accessed from within the same
033     * VM.
034     *
035     * @author Brian Wing Shun Chan
036     * @see MBCategoryLocalServiceUtil
037     * @see com.liferay.portlet.messageboards.service.base.MBCategoryLocalServiceBaseImpl
038     * @see com.liferay.portlet.messageboards.service.impl.MBCategoryLocalServiceImpl
039     * @generated
040     */
041    @ProviderType
042    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
043            PortalException.class, SystemException.class})
044    public interface MBCategoryLocalService extends BaseLocalService,
045            PersistedModelLocalService {
046            /*
047             * NOTE FOR DEVELOPERS:
048             *
049             * 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.
050             */
051    
052            /**
053            * Adds the message boards category to the database. Also notifies the appropriate model listeners.
054            *
055            * @param mbCategory the message boards category
056            * @return the message boards category that was added
057            * @throws SystemException if a system exception occurred
058            */
059            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
060            public com.liferay.portlet.messageboards.model.MBCategory addMBCategory(
061                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
062                    throws com.liferay.portal.kernel.exception.SystemException;
063    
064            /**
065            * Creates a new message boards category with the primary key. Does not add the message boards category to the database.
066            *
067            * @param categoryId the primary key for the new message boards category
068            * @return the new message boards category
069            */
070            public com.liferay.portlet.messageboards.model.MBCategory createMBCategory(
071                    long categoryId);
072    
073            /**
074            * Deletes the message boards category with the primary key from the database. Also notifies the appropriate model listeners.
075            *
076            * @param categoryId the primary key of the message boards category
077            * @return the message boards category that was removed
078            * @throws PortalException if a message boards category with the primary key could not be found
079            * @throws SystemException if a system exception occurred
080            */
081            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
082            public com.liferay.portlet.messageboards.model.MBCategory deleteMBCategory(
083                    long categoryId)
084                    throws com.liferay.portal.kernel.exception.PortalException,
085                            com.liferay.portal.kernel.exception.SystemException;
086    
087            /**
088            * Deletes the message boards category from the database. Also notifies the appropriate model listeners.
089            *
090            * @param mbCategory the message boards category
091            * @return the message boards category that was removed
092            * @throws SystemException if a system exception occurred
093            */
094            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
095            public com.liferay.portlet.messageboards.model.MBCategory deleteMBCategory(
096                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
097                    throws com.liferay.portal.kernel.exception.SystemException;
098    
099            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
100    
101            /**
102            * Performs a dynamic query on the database and returns the matching rows.
103            *
104            * @param dynamicQuery the dynamic query
105            * @return the matching rows
106            * @throws SystemException if a system exception occurred
107            */
108            @SuppressWarnings("rawtypes")
109            public java.util.List dynamicQuery(
110                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
111                    throws com.liferay.portal.kernel.exception.SystemException;
112    
113            /**
114            * Performs a dynamic query on the database and returns a range of the matching rows.
115            *
116            * <p>
117            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.messageboards.model.impl.MBCategoryModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
118            * </p>
119            *
120            * @param dynamicQuery the dynamic query
121            * @param start the lower bound of the range of model instances
122            * @param end the upper bound of the range of model instances (not inclusive)
123            * @return the range of matching rows
124            * @throws SystemException if a system exception occurred
125            */
126            @SuppressWarnings("rawtypes")
127            public java.util.List dynamicQuery(
128                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
129                    int end) throws com.liferay.portal.kernel.exception.SystemException;
130    
131            /**
132            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
133            *
134            * <p>
135            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.messageboards.model.impl.MBCategoryModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
136            * </p>
137            *
138            * @param dynamicQuery the dynamic query
139            * @param start the lower bound of the range of model instances
140            * @param end the upper bound of the range of model instances (not inclusive)
141            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
142            * @return the ordered range of matching rows
143            * @throws SystemException if a system exception occurred
144            */
145            @SuppressWarnings("rawtypes")
146            public java.util.List dynamicQuery(
147                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
148                    int end,
149                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
150                    throws com.liferay.portal.kernel.exception.SystemException;
151    
152            /**
153            * Returns the number of rows that match the dynamic query.
154            *
155            * @param dynamicQuery the dynamic query
156            * @return the number of rows that match the dynamic query
157            * @throws SystemException if a system exception occurred
158            */
159            public long dynamicQueryCount(
160                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
161                    throws com.liferay.portal.kernel.exception.SystemException;
162    
163            /**
164            * Returns the number of rows that match the dynamic query.
165            *
166            * @param dynamicQuery the dynamic query
167            * @param projection the projection to apply to the query
168            * @return the number of rows that match the dynamic query
169            * @throws SystemException if a system exception occurred
170            */
171            public long dynamicQueryCount(
172                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery,
173                    com.liferay.portal.kernel.dao.orm.Projection projection)
174                    throws com.liferay.portal.kernel.exception.SystemException;
175    
176            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
177            public com.liferay.portlet.messageboards.model.MBCategory fetchMBCategory(
178                    long categoryId)
179                    throws com.liferay.portal.kernel.exception.SystemException;
180    
181            /**
182            * Returns the message boards category with the matching UUID and company.
183            *
184            * @param uuid the message boards category's UUID
185            * @param companyId the primary key of the company
186            * @return the matching message boards category, or <code>null</code> if a matching message boards category could not be found
187            * @throws SystemException if a system exception occurred
188            */
189            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
190            public com.liferay.portlet.messageboards.model.MBCategory fetchMBCategoryByUuidAndCompanyId(
191                    java.lang.String uuid, long companyId)
192                    throws com.liferay.portal.kernel.exception.SystemException;
193    
194            /**
195            * Returns the message boards category matching the UUID and group.
196            *
197            * @param uuid the message boards category's UUID
198            * @param groupId the primary key of the group
199            * @return the matching message boards category, or <code>null</code> if a matching message boards category could not be found
200            * @throws SystemException if a system exception occurred
201            */
202            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
203            public com.liferay.portlet.messageboards.model.MBCategory fetchMBCategoryByUuidAndGroupId(
204                    java.lang.String uuid, long groupId)
205                    throws com.liferay.portal.kernel.exception.SystemException;
206    
207            /**
208            * Returns the message boards category with the primary key.
209            *
210            * @param categoryId the primary key of the message boards category
211            * @return the message boards category
212            * @throws PortalException if a message boards category with the primary key could not be found
213            * @throws SystemException if a system exception occurred
214            */
215            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
216            public com.liferay.portlet.messageboards.model.MBCategory getMBCategory(
217                    long categoryId)
218                    throws com.liferay.portal.kernel.exception.PortalException,
219                            com.liferay.portal.kernel.exception.SystemException;
220    
221            @Override
222            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
223            public com.liferay.portal.model.PersistedModel getPersistedModel(
224                    java.io.Serializable primaryKeyObj)
225                    throws com.liferay.portal.kernel.exception.PortalException,
226                            com.liferay.portal.kernel.exception.SystemException;
227    
228            /**
229            * Returns the message boards category with the matching UUID and company.
230            *
231            * @param uuid the message boards category's UUID
232            * @param companyId the primary key of the company
233            * @return the matching message boards category
234            * @throws PortalException if a matching message boards category could not be found
235            * @throws SystemException if a system exception occurred
236            */
237            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
238            public com.liferay.portlet.messageboards.model.MBCategory getMBCategoryByUuidAndCompanyId(
239                    java.lang.String uuid, long companyId)
240                    throws com.liferay.portal.kernel.exception.PortalException,
241                            com.liferay.portal.kernel.exception.SystemException;
242    
243            /**
244            * Returns the message boards category matching the UUID and group.
245            *
246            * @param uuid the message boards category's UUID
247            * @param groupId the primary key of the group
248            * @return the matching message boards category
249            * @throws PortalException if a matching message boards category could not be found
250            * @throws SystemException if a system exception occurred
251            */
252            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
253            public com.liferay.portlet.messageboards.model.MBCategory getMBCategoryByUuidAndGroupId(
254                    java.lang.String uuid, long groupId)
255                    throws com.liferay.portal.kernel.exception.PortalException,
256                            com.liferay.portal.kernel.exception.SystemException;
257    
258            /**
259            * Returns a range of all the message boards categories.
260            *
261            * <p>
262            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.messageboards.model.impl.MBCategoryModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
263            * </p>
264            *
265            * @param start the lower bound of the range of message boards categories
266            * @param end the upper bound of the range of message boards categories (not inclusive)
267            * @return the range of message boards categories
268            * @throws SystemException if a system exception occurred
269            */
270            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
271            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getMBCategories(
272                    int start, int end)
273                    throws com.liferay.portal.kernel.exception.SystemException;
274    
275            /**
276            * Returns the number of message boards categories.
277            *
278            * @return the number of message boards categories
279            * @throws SystemException if a system exception occurred
280            */
281            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
282            public int getMBCategoriesCount()
283                    throws com.liferay.portal.kernel.exception.SystemException;
284    
285            /**
286            * Updates the message boards category in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
287            *
288            * @param mbCategory the message boards category
289            * @return the message boards category that was updated
290            * @throws SystemException if a system exception occurred
291            */
292            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
293            public com.liferay.portlet.messageboards.model.MBCategory updateMBCategory(
294                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
295                    throws com.liferay.portal.kernel.exception.SystemException;
296    
297            /**
298            * Returns the Spring bean ID for this bean.
299            *
300            * @return the Spring bean ID for this bean
301            */
302            public java.lang.String getBeanIdentifier();
303    
304            /**
305            * Sets the Spring bean ID for this bean.
306            *
307            * @param beanIdentifier the Spring bean ID for this bean
308            */
309            public void setBeanIdentifier(java.lang.String beanIdentifier);
310    
311            public com.liferay.portlet.messageboards.model.MBCategory addCategory(
312                    long userId, long parentCategoryId, java.lang.String name,
313                    java.lang.String description,
314                    com.liferay.portal.service.ServiceContext serviceContext)
315                    throws com.liferay.portal.kernel.exception.PortalException,
316                            com.liferay.portal.kernel.exception.SystemException;
317    
318            public com.liferay.portlet.messageboards.model.MBCategory addCategory(
319                    long userId, long parentCategoryId, java.lang.String name,
320                    java.lang.String description, java.lang.String displayStyle,
321                    java.lang.String emailAddress, java.lang.String inProtocol,
322                    java.lang.String inServerName, int inServerPort, boolean inUseSSL,
323                    java.lang.String inUserName, java.lang.String inPassword,
324                    int inReadInterval, java.lang.String outEmailAddress,
325                    boolean outCustom, java.lang.String outServerName, int outServerPort,
326                    boolean outUseSSL, java.lang.String outUserName,
327                    java.lang.String outPassword, boolean allowAnonymous,
328                    boolean mailingListActive,
329                    com.liferay.portal.service.ServiceContext serviceContext)
330                    throws com.liferay.portal.kernel.exception.PortalException,
331                            com.liferay.portal.kernel.exception.SystemException;
332    
333            public void addCategoryResources(long categoryId,
334                    boolean addGroupPermissions, boolean addGuestPermissions)
335                    throws com.liferay.portal.kernel.exception.PortalException,
336                            com.liferay.portal.kernel.exception.SystemException;
337    
338            public void addCategoryResources(long categoryId,
339                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
340                    throws com.liferay.portal.kernel.exception.PortalException,
341                            com.liferay.portal.kernel.exception.SystemException;
342    
343            public void addCategoryResources(
344                    com.liferay.portlet.messageboards.model.MBCategory category,
345                    boolean addGroupPermissions, boolean addGuestPermissions)
346                    throws com.liferay.portal.kernel.exception.PortalException,
347                            com.liferay.portal.kernel.exception.SystemException;
348    
349            public void addCategoryResources(
350                    com.liferay.portlet.messageboards.model.MBCategory category,
351                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
352                    throws com.liferay.portal.kernel.exception.PortalException,
353                            com.liferay.portal.kernel.exception.SystemException;
354    
355            public void deleteCategories(long groupId)
356                    throws com.liferay.portal.kernel.exception.PortalException,
357                            com.liferay.portal.kernel.exception.SystemException;
358    
359            public void deleteCategory(long categoryId)
360                    throws com.liferay.portal.kernel.exception.PortalException,
361                            com.liferay.portal.kernel.exception.SystemException;
362    
363            @com.liferay.portal.kernel.systemevent.SystemEvent(action = SystemEventConstants.ACTION_SKIP, type = SystemEventConstants.TYPE_DELETE)
364            public void deleteCategory(
365                    com.liferay.portlet.messageboards.model.MBCategory category)
366                    throws com.liferay.portal.kernel.exception.PortalException,
367                            com.liferay.portal.kernel.exception.SystemException;
368    
369            @com.liferay.portal.kernel.systemevent.SystemEvent(action = SystemEventConstants.ACTION_SKIP, type = SystemEventConstants.TYPE_DELETE)
370            public void deleteCategory(
371                    com.liferay.portlet.messageboards.model.MBCategory category,
372                    boolean includeTrashedEntries)
373                    throws com.liferay.portal.kernel.exception.PortalException,
374                            com.liferay.portal.kernel.exception.SystemException;
375    
376            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
377            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
378                    long groupId)
379                    throws com.liferay.portal.kernel.exception.SystemException;
380    
381            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
382            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
383                    long groupId, int status)
384                    throws com.liferay.portal.kernel.exception.SystemException;
385    
386            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
387            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
388                    long groupId, long parentCategoryId, int start, int end)
389                    throws com.liferay.portal.kernel.exception.SystemException;
390    
391            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
392            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
393                    long groupId, long parentCategoryId, int status, int start, int end)
394                    throws com.liferay.portal.kernel.exception.SystemException;
395    
396            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
397            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
398                    long groupId, long[] parentCategoryIds, int start, int end)
399                    throws com.liferay.portal.kernel.exception.SystemException;
400    
401            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
402            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
403                    long groupId, long[] parentCategoryIds, int status, int start, int end)
404                    throws com.liferay.portal.kernel.exception.SystemException;
405    
406            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
407            public java.util.List<java.lang.Object> getCategoriesAndThreads(
408                    long groupId, long categoryId)
409                    throws com.liferay.portal.kernel.exception.SystemException;
410    
411            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
412            public int getCategoriesCount(long groupId)
413                    throws com.liferay.portal.kernel.exception.SystemException;
414    
415            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
416            public int getCategoriesCount(long groupId, int status)
417                    throws com.liferay.portal.kernel.exception.SystemException;
418    
419            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
420            public int getCategoriesCount(long groupId, long parentCategoryId)
421                    throws com.liferay.portal.kernel.exception.SystemException;
422    
423            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
424            public int getCategoriesCount(long groupId, long parentCategoryId,
425                    int status) throws com.liferay.portal.kernel.exception.SystemException;
426    
427            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
428            public int getCategoriesCount(long groupId, long[] parentCategoryIds)
429                    throws com.liferay.portal.kernel.exception.SystemException;
430    
431            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
432            public int getCategoriesCount(long groupId, long[] parentCategoryIds,
433                    int status) throws com.liferay.portal.kernel.exception.SystemException;
434    
435            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
436            public com.liferay.portlet.messageboards.model.MBCategory getCategory(
437                    long categoryId)
438                    throws com.liferay.portal.kernel.exception.PortalException,
439                            com.liferay.portal.kernel.exception.SystemException;
440    
441            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
442            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCompanyCategories(
443                    long companyId, int start, int end)
444                    throws com.liferay.portal.kernel.exception.SystemException;
445    
446            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
447            public int getCompanyCategoriesCount(long companyId)
448                    throws com.liferay.portal.kernel.exception.SystemException;
449    
450            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
451            public java.util.List<java.lang.Long> getSubcategoryIds(
452                    java.util.List<java.lang.Long> categoryIds, long groupId,
453                    long categoryId)
454                    throws com.liferay.portal.kernel.exception.SystemException;
455    
456            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
457            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getSubscribedCategories(
458                    long groupId, long userId, int start, int end)
459                    throws com.liferay.portal.kernel.exception.SystemException;
460    
461            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
462            public int getSubscribedCategoriesCount(long groupId, long userId)
463                    throws com.liferay.portal.kernel.exception.SystemException;
464    
465            public void moveCategoriesToTrash(long groupId, long userId)
466                    throws com.liferay.portal.kernel.exception.PortalException,
467                            com.liferay.portal.kernel.exception.SystemException;
468    
469            public com.liferay.portlet.messageboards.model.MBCategory moveCategory(
470                    long categoryId, long parentCategoryId, boolean mergeWithParentCategory)
471                    throws com.liferay.portal.kernel.exception.PortalException,
472                            com.liferay.portal.kernel.exception.SystemException;
473    
474            public com.liferay.portlet.messageboards.model.MBCategory moveCategoryFromTrash(
475                    long userId, long categoryId, long newCategoryId)
476                    throws com.liferay.portal.kernel.exception.PortalException,
477                            com.liferay.portal.kernel.exception.SystemException;
478    
479            public com.liferay.portlet.messageboards.model.MBCategory moveCategoryToTrash(
480                    long userId, long categoryId)
481                    throws com.liferay.portal.kernel.exception.PortalException,
482                            com.liferay.portal.kernel.exception.SystemException;
483    
484            public void restoreCategoryFromTrash(long userId, long categoryId)
485                    throws com.liferay.portal.kernel.exception.PortalException,
486                            com.liferay.portal.kernel.exception.SystemException;
487    
488            public void subscribeCategory(long userId, long groupId, long categoryId)
489                    throws com.liferay.portal.kernel.exception.PortalException,
490                            com.liferay.portal.kernel.exception.SystemException;
491    
492            public void unsubscribeCategory(long userId, long groupId, long categoryId)
493                    throws com.liferay.portal.kernel.exception.PortalException,
494                            com.liferay.portal.kernel.exception.SystemException;
495    
496            public com.liferay.portlet.messageboards.model.MBCategory updateCategory(
497                    long categoryId, long parentCategoryId, java.lang.String name,
498                    java.lang.String description, java.lang.String displayStyle,
499                    java.lang.String emailAddress, java.lang.String inProtocol,
500                    java.lang.String inServerName, int inServerPort, boolean inUseSSL,
501                    java.lang.String inUserName, java.lang.String inPassword,
502                    int inReadInterval, java.lang.String outEmailAddress,
503                    boolean outCustom, java.lang.String outServerName, int outServerPort,
504                    boolean outUseSSL, java.lang.String outUserName,
505                    java.lang.String outPassword, boolean allowAnonymous,
506                    boolean mailingListActive, boolean mergeWithParentCategory,
507                    com.liferay.portal.service.ServiceContext serviceContext)
508                    throws com.liferay.portal.kernel.exception.PortalException,
509                            com.liferay.portal.kernel.exception.SystemException;
510    
511            public com.liferay.portlet.messageboards.model.MBCategory updateStatus(
512                    long userId, long categoryId, int status)
513                    throws com.liferay.portal.kernel.exception.PortalException,
514                            com.liferay.portal.kernel.exception.SystemException;
515    }