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 com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.transaction.Isolation;
020    import com.liferay.portal.kernel.transaction.Propagation;
021    import com.liferay.portal.kernel.transaction.Transactional;
022    import com.liferay.portal.service.BaseLocalService;
023    import com.liferay.portal.service.PersistedModelLocalService;
024    
025    /**
026     * The interface for the message boards category local service.
027     *
028     * <p>
029     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
030     * </p>
031     *
032     * @author Brian Wing Shun Chan
033     * @see MBCategoryLocalServiceUtil
034     * @see com.liferay.portlet.messageboards.service.base.MBCategoryLocalServiceBaseImpl
035     * @see com.liferay.portlet.messageboards.service.impl.MBCategoryLocalServiceImpl
036     * @generated
037     */
038    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
039            PortalException.class, SystemException.class})
040    public interface MBCategoryLocalService extends BaseLocalService,
041            PersistedModelLocalService {
042            /*
043             * NOTE FOR DEVELOPERS:
044             *
045             * 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.
046             */
047    
048            /**
049            * Adds the message boards category to the database. Also notifies the appropriate model listeners.
050            *
051            * @param mbCategory the message boards category
052            * @return the message boards category that was added
053            * @throws SystemException if a system exception occurred
054            */
055            public com.liferay.portlet.messageboards.model.MBCategory addMBCategory(
056                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
057                    throws com.liferay.portal.kernel.exception.SystemException;
058    
059            /**
060            * Creates a new message boards category with the primary key. Does not add the message boards category to the database.
061            *
062            * @param categoryId the primary key for the new message boards category
063            * @return the new message boards category
064            */
065            public com.liferay.portlet.messageboards.model.MBCategory createMBCategory(
066                    long categoryId);
067    
068            /**
069            * Deletes the message boards category with the primary key from the database. Also notifies the appropriate model listeners.
070            *
071            * @param categoryId the primary key of the message boards category
072            * @return the message boards category that was removed
073            * @throws PortalException if a message boards category with the primary key could not be found
074            * @throws SystemException if a system exception occurred
075            */
076            public com.liferay.portlet.messageboards.model.MBCategory deleteMBCategory(
077                    long categoryId)
078                    throws com.liferay.portal.kernel.exception.PortalException,
079                            com.liferay.portal.kernel.exception.SystemException;
080    
081            /**
082            * Deletes the message boards category from the database. Also notifies the appropriate model listeners.
083            *
084            * @param mbCategory the message boards category
085            * @return the message boards category that was removed
086            * @throws SystemException if a system exception occurred
087            */
088            public com.liferay.portlet.messageboards.model.MBCategory deleteMBCategory(
089                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
090                    throws com.liferay.portal.kernel.exception.SystemException;
091    
092            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
093    
094            /**
095            * Performs a dynamic query on the database and returns the matching rows.
096            *
097            * @param dynamicQuery the dynamic query
098            * @return the matching rows
099            * @throws SystemException if a system exception occurred
100            */
101            @SuppressWarnings("rawtypes")
102            public java.util.List dynamicQuery(
103                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
104                    throws com.liferay.portal.kernel.exception.SystemException;
105    
106            /**
107            * Performs a dynamic query on the database and returns a range of the matching rows.
108            *
109            * <p>
110            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
111            * </p>
112            *
113            * @param dynamicQuery the dynamic query
114            * @param start the lower bound of the range of model instances
115            * @param end the upper bound of the range of model instances (not inclusive)
116            * @return the range of matching rows
117            * @throws SystemException if a system exception occurred
118            */
119            @SuppressWarnings("rawtypes")
120            public java.util.List dynamicQuery(
121                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
122                    int end) throws com.liferay.portal.kernel.exception.SystemException;
123    
124            /**
125            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
126            *
127            * <p>
128            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
129            * </p>
130            *
131            * @param dynamicQuery the dynamic query
132            * @param start the lower bound of the range of model instances
133            * @param end the upper bound of the range of model instances (not inclusive)
134            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
135            * @return the ordered range of matching rows
136            * @throws SystemException if a system exception occurred
137            */
138            @SuppressWarnings("rawtypes")
139            public java.util.List dynamicQuery(
140                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
141                    int end,
142                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
143                    throws com.liferay.portal.kernel.exception.SystemException;
144    
145            /**
146            * Returns the number of rows that match the dynamic query.
147            *
148            * @param dynamicQuery the dynamic query
149            * @return the number of rows that match the dynamic query
150            * @throws SystemException if a system exception occurred
151            */
152            public long dynamicQueryCount(
153                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
154                    throws com.liferay.portal.kernel.exception.SystemException;
155    
156            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
157            public com.liferay.portlet.messageboards.model.MBCategory fetchMBCategory(
158                    long categoryId)
159                    throws com.liferay.portal.kernel.exception.SystemException;
160    
161            /**
162            * Returns the message boards category with the primary key.
163            *
164            * @param categoryId the primary key of the message boards category
165            * @return the message boards category
166            * @throws PortalException if a message boards category with the primary key could not be found
167            * @throws SystemException if a system exception occurred
168            */
169            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
170            public com.liferay.portlet.messageboards.model.MBCategory getMBCategory(
171                    long categoryId)
172                    throws com.liferay.portal.kernel.exception.PortalException,
173                            com.liferay.portal.kernel.exception.SystemException;
174    
175            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
176            public com.liferay.portal.model.PersistedModel getPersistedModel(
177                    java.io.Serializable primaryKeyObj)
178                    throws com.liferay.portal.kernel.exception.PortalException,
179                            com.liferay.portal.kernel.exception.SystemException;
180    
181            /**
182            * Returns the message boards category with the UUID in the group.
183            *
184            * @param uuid the UUID of message boards category
185            * @param groupId the group id of the message boards category
186            * @return the message boards category
187            * @throws PortalException if a message boards category with the UUID in the group could not be found
188            * @throws SystemException if a system exception occurred
189            */
190            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
191            public com.liferay.portlet.messageboards.model.MBCategory getMBCategoryByUuidAndGroupId(
192                    java.lang.String uuid, long groupId)
193                    throws com.liferay.portal.kernel.exception.PortalException,
194                            com.liferay.portal.kernel.exception.SystemException;
195    
196            /**
197            * Returns a range of all the message boards categories.
198            *
199            * <p>
200            * 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.
201            * </p>
202            *
203            * @param start the lower bound of the range of message boards categories
204            * @param end the upper bound of the range of message boards categories (not inclusive)
205            * @return the range of message boards categories
206            * @throws SystemException if a system exception occurred
207            */
208            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
209            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getMBCategories(
210                    int start, int end)
211                    throws com.liferay.portal.kernel.exception.SystemException;
212    
213            /**
214            * Returns the number of message boards categories.
215            *
216            * @return the number of message boards categories
217            * @throws SystemException if a system exception occurred
218            */
219            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
220            public int getMBCategoriesCount()
221                    throws com.liferay.portal.kernel.exception.SystemException;
222    
223            /**
224            * Updates the message boards category in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
225            *
226            * @param mbCategory the message boards category
227            * @return the message boards category that was updated
228            * @throws SystemException if a system exception occurred
229            */
230            public com.liferay.portlet.messageboards.model.MBCategory updateMBCategory(
231                    com.liferay.portlet.messageboards.model.MBCategory mbCategory)
232                    throws com.liferay.portal.kernel.exception.SystemException;
233    
234            /**
235            * Updates the message boards category in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
236            *
237            * @param mbCategory the message boards category
238            * @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.
239            * @return the message boards category that was updated
240            * @throws SystemException if a system exception occurred
241            */
242            public com.liferay.portlet.messageboards.model.MBCategory updateMBCategory(
243                    com.liferay.portlet.messageboards.model.MBCategory mbCategory,
244                    boolean merge)
245                    throws com.liferay.portal.kernel.exception.SystemException;
246    
247            /**
248            * Returns the Spring bean ID for this bean.
249            *
250            * @return the Spring bean ID for this bean
251            */
252            public java.lang.String getBeanIdentifier();
253    
254            /**
255            * Sets the Spring bean ID for this bean.
256            *
257            * @param beanIdentifier the Spring bean ID for this bean
258            */
259            public void setBeanIdentifier(java.lang.String beanIdentifier);
260    
261            public com.liferay.portlet.messageboards.model.MBCategory addCategory(
262                    long userId, long parentCategoryId, java.lang.String name,
263                    java.lang.String description, java.lang.String displayStyle,
264                    java.lang.String emailAddress, java.lang.String inProtocol,
265                    java.lang.String inServerName, int inServerPort, boolean inUseSSL,
266                    java.lang.String inUserName, java.lang.String inPassword,
267                    int inReadInterval, java.lang.String outEmailAddress,
268                    boolean outCustom, java.lang.String outServerName, int outServerPort,
269                    boolean outUseSSL, java.lang.String outUserName,
270                    java.lang.String outPassword, boolean allowAnonymous,
271                    boolean mailingListActive,
272                    com.liferay.portal.service.ServiceContext serviceContext)
273                    throws com.liferay.portal.kernel.exception.PortalException,
274                            com.liferay.portal.kernel.exception.SystemException;
275    
276            public void addCategoryResources(long categoryId,
277                    boolean addGroupPermissions, boolean addGuestPermissions)
278                    throws com.liferay.portal.kernel.exception.PortalException,
279                            com.liferay.portal.kernel.exception.SystemException;
280    
281            public void addCategoryResources(long categoryId,
282                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
283                    throws com.liferay.portal.kernel.exception.PortalException,
284                            com.liferay.portal.kernel.exception.SystemException;
285    
286            public void addCategoryResources(
287                    com.liferay.portlet.messageboards.model.MBCategory category,
288                    boolean addGroupPermissions, boolean addGuestPermissions)
289                    throws com.liferay.portal.kernel.exception.PortalException,
290                            com.liferay.portal.kernel.exception.SystemException;
291    
292            public void addCategoryResources(
293                    com.liferay.portlet.messageboards.model.MBCategory category,
294                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
295                    throws com.liferay.portal.kernel.exception.PortalException,
296                            com.liferay.portal.kernel.exception.SystemException;
297    
298            public void deleteCategories(long groupId)
299                    throws com.liferay.portal.kernel.exception.PortalException,
300                            com.liferay.portal.kernel.exception.SystemException;
301    
302            public void deleteCategory(long categoryId)
303                    throws com.liferay.portal.kernel.exception.PortalException,
304                            com.liferay.portal.kernel.exception.SystemException;
305    
306            public void deleteCategory(
307                    com.liferay.portlet.messageboards.model.MBCategory category)
308                    throws com.liferay.portal.kernel.exception.PortalException,
309                            com.liferay.portal.kernel.exception.SystemException;
310    
311            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
312            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
313                    long groupId)
314                    throws com.liferay.portal.kernel.exception.SystemException;
315    
316            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
317            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
318                    long groupId, long parentCategoryId, int start, int end)
319                    throws com.liferay.portal.kernel.exception.SystemException;
320    
321            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
322            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
323                    long groupId, long[] parentCategoryIds, int start, int end)
324                    throws com.liferay.portal.kernel.exception.SystemException;
325    
326            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
327            public java.util.List<java.lang.Object> getCategoriesAndThreads(
328                    long groupId, long categoryId)
329                    throws com.liferay.portal.kernel.exception.SystemException;
330    
331            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
332            public int getCategoriesCount(long groupId)
333                    throws com.liferay.portal.kernel.exception.SystemException;
334    
335            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
336            public int getCategoriesCount(long groupId, long parentCategoryId)
337                    throws com.liferay.portal.kernel.exception.SystemException;
338    
339            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
340            public int getCategoriesCount(long groupId, long[] parentCategoryIds)
341                    throws com.liferay.portal.kernel.exception.SystemException;
342    
343            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
344            public com.liferay.portlet.messageboards.model.MBCategory getCategory(
345                    long categoryId)
346                    throws com.liferay.portal.kernel.exception.PortalException,
347                            com.liferay.portal.kernel.exception.SystemException;
348    
349            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
350            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCompanyCategories(
351                    long companyId, int start, int end)
352                    throws com.liferay.portal.kernel.exception.SystemException;
353    
354            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
355            public int getCompanyCategoriesCount(long companyId)
356                    throws com.liferay.portal.kernel.exception.SystemException;
357    
358            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
359            public java.util.List<java.lang.Long> getSubcategoryIds(
360                    java.util.List<java.lang.Long> categoryIds, long groupId,
361                    long categoryId)
362                    throws com.liferay.portal.kernel.exception.SystemException;
363    
364            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
365            public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getSubscribedCategories(
366                    long groupId, long userId, int start, int end)
367                    throws com.liferay.portal.kernel.exception.SystemException;
368    
369            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
370            public int getSubscribedCategoriesCount(long groupId, long userId)
371                    throws com.liferay.portal.kernel.exception.SystemException;
372    
373            public void subscribeCategory(long userId, long groupId, long categoryId)
374                    throws com.liferay.portal.kernel.exception.PortalException,
375                            com.liferay.portal.kernel.exception.SystemException;
376    
377            public void unsubscribeCategory(long userId, long groupId, long categoryId)
378                    throws com.liferay.portal.kernel.exception.PortalException,
379                            com.liferay.portal.kernel.exception.SystemException;
380    
381            public com.liferay.portlet.messageboards.model.MBCategory updateCategory(
382                    long categoryId, long parentCategoryId, java.lang.String name,
383                    java.lang.String description, java.lang.String displayStyle,
384                    java.lang.String emailAddress, java.lang.String inProtocol,
385                    java.lang.String inServerName, int inServerPort, boolean inUseSSL,
386                    java.lang.String inUserName, java.lang.String inPassword,
387                    int inReadInterval, java.lang.String outEmailAddress,
388                    boolean outCustom, java.lang.String outServerName, int outServerPort,
389                    boolean outUseSSL, java.lang.String outUserName,
390                    java.lang.String outPassword, boolean allowAnonymous,
391                    boolean mailingListActive, boolean mergeWithParentCategory,
392                    com.liferay.portal.service.ServiceContext serviceContext)
393                    throws com.liferay.portal.kernel.exception.PortalException,
394                            com.liferay.portal.kernel.exception.SystemException;
395    }