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.transaction.Isolation; 022 import com.liferay.portal.kernel.transaction.Propagation; 023 import com.liferay.portal.kernel.transaction.Transactional; 024 import com.liferay.portal.service.BaseLocalService; 025 import com.liferay.portal.service.PersistedModelLocalService; 026 027 /** 028 * Provides the local service interface for MBDiscussion. Methods of this 029 * service will not have security checks based on the propagated JAAS 030 * credentials because this service can only be accessed from within the same 031 * VM. 032 * 033 * @author Brian Wing Shun Chan 034 * @see MBDiscussionLocalServiceUtil 035 * @see com.liferay.portlet.messageboards.service.base.MBDiscussionLocalServiceBaseImpl 036 * @see com.liferay.portlet.messageboards.service.impl.MBDiscussionLocalServiceImpl 037 * @generated 038 */ 039 @ProviderType 040 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 041 PortalException.class, SystemException.class}) 042 public interface MBDiscussionLocalService extends BaseLocalService, 043 PersistedModelLocalService { 044 /* 045 * NOTE FOR DEVELOPERS: 046 * 047 * Never modify or reference this interface directly. Always use {@link MBDiscussionLocalServiceUtil} to access the message boards discussion local service. Add custom service methods to {@link com.liferay.portlet.messageboards.service.impl.MBDiscussionLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. 048 */ 049 050 /** 051 * Adds the message boards discussion to the database. Also notifies the appropriate model listeners. 052 * 053 * @param mbDiscussion the message boards discussion 054 * @return the message boards discussion that was added 055 * @throws SystemException if a system exception occurred 056 */ 057 public com.liferay.portlet.messageboards.model.MBDiscussion addMBDiscussion( 058 com.liferay.portlet.messageboards.model.MBDiscussion mbDiscussion) 059 throws com.liferay.portal.kernel.exception.SystemException; 060 061 /** 062 * Creates a new message boards discussion with the primary key. Does not add the message boards discussion to the database. 063 * 064 * @param discussionId the primary key for the new message boards discussion 065 * @return the new message boards discussion 066 */ 067 public com.liferay.portlet.messageboards.model.MBDiscussion createMBDiscussion( 068 long discussionId); 069 070 /** 071 * Deletes the message boards discussion with the primary key from the database. Also notifies the appropriate model listeners. 072 * 073 * @param discussionId the primary key of the message boards discussion 074 * @return the message boards discussion that was removed 075 * @throws PortalException if a message boards discussion with the primary key could not be found 076 * @throws SystemException if a system exception occurred 077 */ 078 public com.liferay.portlet.messageboards.model.MBDiscussion deleteMBDiscussion( 079 long discussionId) 080 throws com.liferay.portal.kernel.exception.PortalException, 081 com.liferay.portal.kernel.exception.SystemException; 082 083 /** 084 * Deletes the message boards discussion from the database. Also notifies the appropriate model listeners. 085 * 086 * @param mbDiscussion the message boards discussion 087 * @return the message boards discussion that was removed 088 * @throws SystemException if a system exception occurred 089 */ 090 public com.liferay.portlet.messageboards.model.MBDiscussion deleteMBDiscussion( 091 com.liferay.portlet.messageboards.model.MBDiscussion mbDiscussion) 092 throws com.liferay.portal.kernel.exception.SystemException; 093 094 public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery(); 095 096 /** 097 * Performs a dynamic query on the database and returns the matching rows. 098 * 099 * @param dynamicQuery the dynamic query 100 * @return the matching rows 101 * @throws SystemException if a system exception occurred 102 */ 103 @SuppressWarnings("rawtypes") 104 public java.util.List dynamicQuery( 105 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery) 106 throws com.liferay.portal.kernel.exception.SystemException; 107 108 /** 109 * Performs a dynamic query on the database and returns a range of the matching rows. 110 * 111 * <p> 112 * 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.MBDiscussionModelImpl}. 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. 113 * </p> 114 * 115 * @param dynamicQuery the dynamic query 116 * @param start the lower bound of the range of model instances 117 * @param end the upper bound of the range of model instances (not inclusive) 118 * @return the range of matching rows 119 * @throws SystemException if a system exception occurred 120 */ 121 @SuppressWarnings("rawtypes") 122 public java.util.List dynamicQuery( 123 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start, 124 int end) throws com.liferay.portal.kernel.exception.SystemException; 125 126 /** 127 * Performs a dynamic query on the database and returns an ordered range of the matching rows. 128 * 129 * <p> 130 * 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.MBDiscussionModelImpl}. 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. 131 * </p> 132 * 133 * @param dynamicQuery the dynamic query 134 * @param start the lower bound of the range of model instances 135 * @param end the upper bound of the range of model instances (not inclusive) 136 * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) 137 * @return the ordered range of matching rows 138 * @throws SystemException if a system exception occurred 139 */ 140 @SuppressWarnings("rawtypes") 141 public java.util.List dynamicQuery( 142 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start, 143 int end, 144 com.liferay.portal.kernel.util.OrderByComparator orderByComparator) 145 throws com.liferay.portal.kernel.exception.SystemException; 146 147 /** 148 * Returns the number of rows that match the dynamic query. 149 * 150 * @param dynamicQuery the dynamic query 151 * @return the number of rows that match the dynamic query 152 * @throws SystemException if a system exception occurred 153 */ 154 public long dynamicQueryCount( 155 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery) 156 throws com.liferay.portal.kernel.exception.SystemException; 157 158 /** 159 * Returns the number of rows that match the dynamic query. 160 * 161 * @param dynamicQuery the dynamic query 162 * @param projection the projection to apply to the query 163 * @return the number of rows that match the dynamic query 164 * @throws SystemException if a system exception occurred 165 */ 166 public long dynamicQueryCount( 167 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, 168 com.liferay.portal.kernel.dao.orm.Projection projection) 169 throws com.liferay.portal.kernel.exception.SystemException; 170 171 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 172 public com.liferay.portlet.messageboards.model.MBDiscussion fetchMBDiscussion( 173 long discussionId) 174 throws com.liferay.portal.kernel.exception.SystemException; 175 176 /** 177 * Returns the message boards discussion with the matching UUID and company. 178 * 179 * @param uuid the message boards discussion's UUID 180 * @param companyId the primary key of the company 181 * @return the matching message boards discussion, or <code>null</code> if a matching message boards discussion could not be found 182 * @throws SystemException if a system exception occurred 183 */ 184 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 185 public com.liferay.portlet.messageboards.model.MBDiscussion fetchMBDiscussionByUuidAndCompanyId( 186 java.lang.String uuid, long companyId) 187 throws com.liferay.portal.kernel.exception.SystemException; 188 189 /** 190 * Returns the message boards discussion matching the UUID and group. 191 * 192 * @param uuid the message boards discussion's UUID 193 * @param groupId the primary key of the group 194 * @return the matching message boards discussion, or <code>null</code> if a matching message boards discussion could not be found 195 * @throws SystemException if a system exception occurred 196 */ 197 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 198 public com.liferay.portlet.messageboards.model.MBDiscussion fetchMBDiscussionByUuidAndGroupId( 199 java.lang.String uuid, long groupId) 200 throws com.liferay.portal.kernel.exception.SystemException; 201 202 /** 203 * Returns the message boards discussion with the primary key. 204 * 205 * @param discussionId the primary key of the message boards discussion 206 * @return the message boards discussion 207 * @throws PortalException if a message boards discussion with the primary key could not be found 208 * @throws SystemException if a system exception occurred 209 */ 210 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 211 public com.liferay.portlet.messageboards.model.MBDiscussion getMBDiscussion( 212 long discussionId) 213 throws com.liferay.portal.kernel.exception.PortalException, 214 com.liferay.portal.kernel.exception.SystemException; 215 216 @Override 217 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 218 public com.liferay.portal.model.PersistedModel getPersistedModel( 219 java.io.Serializable primaryKeyObj) 220 throws com.liferay.portal.kernel.exception.PortalException, 221 com.liferay.portal.kernel.exception.SystemException; 222 223 /** 224 * Returns the message boards discussion with the matching UUID and company. 225 * 226 * @param uuid the message boards discussion's UUID 227 * @param companyId the primary key of the company 228 * @return the matching message boards discussion 229 * @throws PortalException if a matching message boards discussion could not be found 230 * @throws SystemException if a system exception occurred 231 */ 232 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 233 public com.liferay.portlet.messageboards.model.MBDiscussion getMBDiscussionByUuidAndCompanyId( 234 java.lang.String uuid, long companyId) 235 throws com.liferay.portal.kernel.exception.PortalException, 236 com.liferay.portal.kernel.exception.SystemException; 237 238 /** 239 * Returns the message boards discussion matching the UUID and group. 240 * 241 * @param uuid the message boards discussion's UUID 242 * @param groupId the primary key of the group 243 * @return the matching message boards discussion 244 * @throws PortalException if a matching message boards discussion could not be found 245 * @throws SystemException if a system exception occurred 246 */ 247 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 248 public com.liferay.portlet.messageboards.model.MBDiscussion getMBDiscussionByUuidAndGroupId( 249 java.lang.String uuid, long groupId) 250 throws com.liferay.portal.kernel.exception.PortalException, 251 com.liferay.portal.kernel.exception.SystemException; 252 253 /** 254 * Returns a range of all the message boards discussions. 255 * 256 * <p> 257 * 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.MBDiscussionModelImpl}. 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. 258 * </p> 259 * 260 * @param start the lower bound of the range of message boards discussions 261 * @param end the upper bound of the range of message boards discussions (not inclusive) 262 * @return the range of message boards discussions 263 * @throws SystemException if a system exception occurred 264 */ 265 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 266 public java.util.List<com.liferay.portlet.messageboards.model.MBDiscussion> getMBDiscussions( 267 int start, int end) 268 throws com.liferay.portal.kernel.exception.SystemException; 269 270 /** 271 * Returns the number of message boards discussions. 272 * 273 * @return the number of message boards discussions 274 * @throws SystemException if a system exception occurred 275 */ 276 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 277 public int getMBDiscussionsCount() 278 throws com.liferay.portal.kernel.exception.SystemException; 279 280 /** 281 * Updates the message boards discussion in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 282 * 283 * @param mbDiscussion the message boards discussion 284 * @return the message boards discussion that was updated 285 * @throws SystemException if a system exception occurred 286 */ 287 public com.liferay.portlet.messageboards.model.MBDiscussion updateMBDiscussion( 288 com.liferay.portlet.messageboards.model.MBDiscussion mbDiscussion) 289 throws com.liferay.portal.kernel.exception.SystemException; 290 291 /** 292 * Returns the Spring bean ID for this bean. 293 * 294 * @return the Spring bean ID for this bean 295 */ 296 public java.lang.String getBeanIdentifier(); 297 298 /** 299 * Sets the Spring bean ID for this bean. 300 * 301 * @param beanIdentifier the Spring bean ID for this bean 302 */ 303 public void setBeanIdentifier(java.lang.String beanIdentifier); 304 305 public com.liferay.portlet.messageboards.model.MBDiscussion addDiscussion( 306 long userId, long classNameId, long classPK, long threadId, 307 com.liferay.portal.service.ServiceContext serviceContext) 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 com.liferay.portlet.messageboards.model.MBDiscussion fetchDiscussion( 313 long discussionId) 314 throws com.liferay.portal.kernel.exception.SystemException; 315 316 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 317 public com.liferay.portlet.messageboards.model.MBDiscussion fetchDiscussion( 318 java.lang.String className, long classPK) 319 throws com.liferay.portal.kernel.exception.SystemException; 320 321 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 322 public com.liferay.portlet.messageboards.model.MBDiscussion getDiscussion( 323 long discussionId) 324 throws com.liferay.portal.kernel.exception.PortalException, 325 com.liferay.portal.kernel.exception.SystemException; 326 327 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 328 public com.liferay.portlet.messageboards.model.MBDiscussion getDiscussion( 329 java.lang.String className, long classPK) 330 throws com.liferay.portal.kernel.exception.PortalException, 331 com.liferay.portal.kernel.exception.SystemException; 332 333 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 334 public com.liferay.portlet.messageboards.model.MBDiscussion getThreadDiscussion( 335 long threadId) 336 throws com.liferay.portal.kernel.exception.PortalException, 337 com.liferay.portal.kernel.exception.SystemException; 338 }