1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portlet.messageboards.service;
21  
22  import com.liferay.portal.PortalException;
23  import com.liferay.portal.SystemException;
24  import com.liferay.portal.kernel.annotation.Isolation;
25  import com.liferay.portal.kernel.annotation.Propagation;
26  import com.liferay.portal.kernel.annotation.Transactional;
27  
28  /**
29   * <a href="MBCategoryService.java.html"><b><i>View Source</i></b></a>
30   *
31   * <p>
32   * ServiceBuilder generated this class. Modifications in this class will be
33   * overwritten the next time is generated.
34   * </p>
35   *
36   * <p>
37   * This interface defines the service. The default implementation is
38   * <code>com.liferay.portlet.messageboards.service.impl.MBCategoryServiceImpl</code>.
39   * Modify methods in that class and rerun ServiceBuilder to populate this class
40   * and all other generated classes.
41   * </p>
42   *
43   * <p>
44   * This is a remote service. Methods of this service are expected to have security checks based on the propagated JAAS credentials because this service can be accessed remotely.
45   * </p>
46   *
47   * @author Brian Wing Shun Chan
48   *
49   * @see com.liferay.portlet.messageboards.service.MBCategoryServiceUtil
50   *
51   */
52  @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
53      PortalException.class, SystemException.class})
54  public interface MBCategoryService {
55      public com.liferay.portlet.messageboards.model.MBCategory addCategory(
56          long parentCategoryId, java.lang.String name,
57          java.lang.String description, java.lang.String emailAddress,
58          java.lang.String inProtocol, java.lang.String inServerName,
59          int inServerPort, boolean inUseSSL, java.lang.String inUserName,
60          java.lang.String inPassword, int inReadInterval,
61          java.lang.String outEmailAddress, boolean outCustom,
62          java.lang.String outServerName, int outServerPort, boolean outUseSSL,
63          java.lang.String outUserName, java.lang.String outPassword,
64          boolean mailingListActive,
65          com.liferay.portal.service.ServiceContext serviceContext)
66          throws com.liferay.portal.PortalException,
67              com.liferay.portal.SystemException;
68  
69      public void deleteCategory(long categoryId)
70          throws com.liferay.portal.PortalException,
71              com.liferay.portal.SystemException;
72  
73      @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
74      public com.liferay.portlet.messageboards.model.MBCategory getCategory(
75          long categoryId)
76          throws com.liferay.portal.PortalException,
77              com.liferay.portal.SystemException;
78  
79      @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
80      public java.util.List<com.liferay.portlet.messageboards.model.MBCategory> getCategories(
81          long groupId, long parentCategoryId, int start, int end)
82          throws com.liferay.portal.PortalException,
83              com.liferay.portal.SystemException;
84  
85      @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
86      public int getCategoriesCount(long groupId, long parentCategoryId)
87          throws com.liferay.portal.SystemException;
88  
89      public void subscribeCategory(long categoryId)
90          throws com.liferay.portal.PortalException,
91              com.liferay.portal.SystemException;
92  
93      public void unsubscribeCategory(long categoryId)
94          throws com.liferay.portal.PortalException,
95              com.liferay.portal.SystemException;
96  
97      public com.liferay.portlet.messageboards.model.MBCategory updateCategory(
98          long categoryId, long parentCategoryId, java.lang.String name,
99          java.lang.String description, java.lang.String emailAddress,
100         java.lang.String inProtocol, java.lang.String inServerName,
101         int inServerPort, boolean inUseSSL, java.lang.String inUserName,
102         java.lang.String inPassword, int inReadInterval,
103         java.lang.String outEmailAddress, boolean outCustom,
104         java.lang.String outServerName, int outServerPort, boolean outUseSSL,
105         java.lang.String outUserName, java.lang.String outPassword,
106         boolean mailingListActive, boolean mergeWithParentCategory)
107         throws com.liferay.portal.PortalException,
108             com.liferay.portal.SystemException;
109 }