001 /** 002 * Copyright (c) 2000-2012 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.asset.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 asset link 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 AssetLinkLocalServiceUtil 034 * @see com.liferay.portlet.asset.service.base.AssetLinkLocalServiceBaseImpl 035 * @see com.liferay.portlet.asset.service.impl.AssetLinkLocalServiceImpl 036 * @generated 037 */ 038 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 039 PortalException.class, SystemException.class}) 040 public interface AssetLinkLocalService extends BaseLocalService, 041 PersistedModelLocalService { 042 /* 043 * NOTE FOR DEVELOPERS: 044 * 045 * Never modify or reference this interface directly. Always use {@link AssetLinkLocalServiceUtil} to access the asset link local service. Add custom service methods to {@link com.liferay.portlet.asset.service.impl.AssetLinkLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. 046 */ 047 048 /** 049 * Adds the asset link to the database. Also notifies the appropriate model listeners. 050 * 051 * @param assetLink the asset link 052 * @return the asset link that was added 053 * @throws SystemException if a system exception occurred 054 */ 055 public com.liferay.portlet.asset.model.AssetLink addAssetLink( 056 com.liferay.portlet.asset.model.AssetLink assetLink) 057 throws com.liferay.portal.kernel.exception.SystemException; 058 059 /** 060 * Creates a new asset link with the primary key. Does not add the asset link to the database. 061 * 062 * @param linkId the primary key for the new asset link 063 * @return the new asset link 064 */ 065 public com.liferay.portlet.asset.model.AssetLink createAssetLink( 066 long linkId); 067 068 /** 069 * Deletes the asset link with the primary key from the database. Also notifies the appropriate model listeners. 070 * 071 * @param linkId the primary key of the asset link 072 * @return the asset link that was removed 073 * @throws PortalException if a asset link with the primary key could not be found 074 * @throws SystemException if a system exception occurred 075 */ 076 public com.liferay.portlet.asset.model.AssetLink deleteAssetLink( 077 long linkId) 078 throws com.liferay.portal.kernel.exception.PortalException, 079 com.liferay.portal.kernel.exception.SystemException; 080 081 /** 082 * Deletes the asset link from the database. Also notifies the appropriate model listeners. 083 * 084 * @param assetLink the asset link 085 * @return the asset link that was removed 086 * @throws SystemException if a system exception occurred 087 */ 088 public com.liferay.portlet.asset.model.AssetLink deleteAssetLink( 089 com.liferay.portlet.asset.model.AssetLink assetLink) 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.asset.model.AssetLink fetchAssetLink(long linkId) 158 throws com.liferay.portal.kernel.exception.SystemException; 159 160 /** 161 * Returns the asset link with the primary key. 162 * 163 * @param linkId the primary key of the asset link 164 * @return the asset link 165 * @throws PortalException if a asset link with the primary key could not be found 166 * @throws SystemException if a system exception occurred 167 */ 168 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 169 public com.liferay.portlet.asset.model.AssetLink getAssetLink(long linkId) 170 throws com.liferay.portal.kernel.exception.PortalException, 171 com.liferay.portal.kernel.exception.SystemException; 172 173 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 174 public com.liferay.portal.model.PersistedModel getPersistedModel( 175 java.io.Serializable primaryKeyObj) 176 throws com.liferay.portal.kernel.exception.PortalException, 177 com.liferay.portal.kernel.exception.SystemException; 178 179 /** 180 * Returns a range of all the asset links. 181 * 182 * <p> 183 * 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. 184 * </p> 185 * 186 * @param start the lower bound of the range of asset links 187 * @param end the upper bound of the range of asset links (not inclusive) 188 * @return the range of asset links 189 * @throws SystemException if a system exception occurred 190 */ 191 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 192 public java.util.List<com.liferay.portlet.asset.model.AssetLink> getAssetLinks( 193 int start, int end) 194 throws com.liferay.portal.kernel.exception.SystemException; 195 196 /** 197 * Returns the number of asset links. 198 * 199 * @return the number of asset links 200 * @throws SystemException if a system exception occurred 201 */ 202 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 203 public int getAssetLinksCount() 204 throws com.liferay.portal.kernel.exception.SystemException; 205 206 /** 207 * Updates the asset link in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 208 * 209 * @param assetLink the asset link 210 * @return the asset link that was updated 211 * @throws SystemException if a system exception occurred 212 */ 213 public com.liferay.portlet.asset.model.AssetLink updateAssetLink( 214 com.liferay.portlet.asset.model.AssetLink assetLink) 215 throws com.liferay.portal.kernel.exception.SystemException; 216 217 /** 218 * Returns the Spring bean ID for this bean. 219 * 220 * @return the Spring bean ID for this bean 221 */ 222 public java.lang.String getBeanIdentifier(); 223 224 /** 225 * Sets the Spring bean ID for this bean. 226 * 227 * @param beanIdentifier the Spring bean ID for this bean 228 */ 229 public void setBeanIdentifier(java.lang.String beanIdentifier); 230 231 /** 232 * Adds a new asset link. 233 * 234 * @param userId the primary key of the link's creator 235 * @param entryId1 the primary key of the first asset entry 236 * @param entryId2 the primary key of the second asset entry 237 * @param type the link type. Acceptable values include {@link 238 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_RELATED} 239 which is a bidirectional relationship and {@link 240 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_CHILD} 241 which is a unidirectional relationship. For more information see 242 {@link com.liferay.portlet.asset.model.AssetLinkConstants} 243 * @param weight the weight of the relationship, allowing precedence 244 ordering of links 245 * @return the asset link 246 * @throws PortalException if the user could not be found 247 * @throws SystemException if a system exception occurred 248 */ 249 public com.liferay.portlet.asset.model.AssetLink addLink(long userId, 250 long entryId1, long entryId2, int type, int weight) 251 throws com.liferay.portal.kernel.exception.PortalException, 252 com.liferay.portal.kernel.exception.SystemException; 253 254 /** 255 * Deletes the asset link. 256 * 257 * @param link the asset link 258 * @throws SystemException if a system exception occurred 259 */ 260 public void deleteLink(com.liferay.portlet.asset.model.AssetLink link) 261 throws com.liferay.portal.kernel.exception.SystemException; 262 263 /** 264 * Deletes the asset link. 265 * 266 * @param linkId the primary key of the asset link 267 * @throws PortalException if the asset link could not be found 268 * @throws SystemException if a system exception occurred 269 */ 270 public void deleteLink(long linkId) 271 throws com.liferay.portal.kernel.exception.PortalException, 272 com.liferay.portal.kernel.exception.SystemException; 273 274 /** 275 * Deletes all links associated with the asset entry. 276 * 277 * @param entryId the primary key of the asset entry 278 * @throws SystemException if a system exception occurred 279 */ 280 public void deleteLinks(long entryId) 281 throws com.liferay.portal.kernel.exception.SystemException; 282 283 /** 284 * Delete all links that associate the two asset entries. 285 * 286 * @param entryId1 the primary key of the first asset entry 287 * @param entryId2 the primary key of the second asset entry 288 * @throws SystemException if a system exception occurred 289 */ 290 public void deleteLinks(long entryId1, long entryId2) 291 throws com.liferay.portal.kernel.exception.SystemException; 292 293 /** 294 * Returns all the asset links whose first entry ID is the given entry ID. 295 * 296 * @param entryId the primary key of the asset entry 297 * @return the asset links whose first entry ID is the given entry ID 298 * @throws SystemException if a system exception occurred 299 */ 300 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 301 public java.util.List<com.liferay.portlet.asset.model.AssetLink> getDirectLinks( 302 long entryId) 303 throws com.liferay.portal.kernel.exception.SystemException; 304 305 /** 306 * Returns all the asset links of the given link type whose first entry ID 307 * is the given entry ID. 308 * 309 * @param entryId the primary key of the asset entry 310 * @param typeId the link type. Acceptable values include {@link 311 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_RELATED} 312 which is a bidirectional relationship and {@link 313 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_CHILD} 314 which is a unidirectional relationship. For more information see 315 {@link com.liferay.portlet.asset.model.AssetLinkConstants} 316 * @return the asset links of the given link type whose first entry ID is 317 the given entry ID 318 * @throws SystemException if a system exception occurred 319 */ 320 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 321 public java.util.List<com.liferay.portlet.asset.model.AssetLink> getDirectLinks( 322 long entryId, int typeId) 323 throws com.liferay.portal.kernel.exception.SystemException; 324 325 /** 326 * Returns all the asset links whose first or second entry ID is the given 327 * entry ID. 328 * 329 * @param entryId the primary key of the asset entry 330 * @return the asset links whose first or second entry ID is the given entry 331 ID 332 * @throws SystemException if a system exception occurred 333 */ 334 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 335 public java.util.List<com.liferay.portlet.asset.model.AssetLink> getLinks( 336 long entryId) 337 throws com.liferay.portal.kernel.exception.SystemException; 338 339 /** 340 * Returns all the asset links of the given link type whose first or second 341 * entry ID is the given entry ID. 342 * 343 * @param entryId the primary key of the asset entry 344 * @param typeId the link type. Acceptable values include {@link 345 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_RELATED} 346 which is a bidirectional relationship and {@link 347 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_CHILD} 348 which is a unidirectional relationship. For more information see 349 {@link com.liferay.portlet.asset.model.AssetLinkConstants} 350 * @return the asset links of the given link type whose first or second 351 entry ID is the given entry ID 352 * @throws SystemException if a system exception occurred 353 */ 354 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 355 public java.util.List<com.liferay.portlet.asset.model.AssetLink> getLinks( 356 long entryId, int typeId) 357 throws com.liferay.portal.kernel.exception.SystemException; 358 359 /** 360 * Returns all the asset links of the given link type whose second entry ID 361 * is the given entry ID. 362 * 363 * @param entryId the primary key of the asset entry 364 * @param typeId the link type. Acceptable values include {@link 365 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_RELATED} 366 which is a bidirectional relationship and {@link 367 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_CHILD} 368 which is a unidirectional relationship. For more information see 369 {@link com.liferay.portlet.asset.model.AssetLinkConstants} 370 * @return the asset links of the given link type whose second entry ID is 371 the given entry ID 372 * @throws SystemException if a system exception occurred 373 */ 374 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 375 public java.util.List<com.liferay.portlet.asset.model.AssetLink> getReverseLinks( 376 long entryId, int typeId) 377 throws com.liferay.portal.kernel.exception.SystemException; 378 379 /** 380 * Updates all links of the asset entry, replacing them with links 381 * associating the asset entry with the asset entries of the given link 382 * entry IDs. 383 * 384 * <p> 385 * If no link exists with a given link entry ID, a new link is created 386 * associating the current asset entry with the asset entry of that link 387 * entry ID. An existing link is deleted if either of its entry IDs is not 388 * contained in the given link entry IDs. 389 * </p> 390 * 391 * @param userId the primary key of the user updating the links 392 * @param entryId the primary key of the asset entry to be managed 393 * @param linkEntryIds the primary keys of the asset entries to be linked 394 with the asset entry to be managed 395 * @param typeId the type of the asset links to be created. Acceptable 396 values include {@link 397 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_RELATED} 398 which is a bidirectional relationship and {@link 399 com.liferay.portlet.asset.model.AssetLinkConstants#TYPE_CHILD} 400 which is a unidirectional relationship. For more information see 401 {@link com.liferay.portlet.asset.model.AssetLinkConstants} 402 * @throws PortalException if the user could not be found 403 * @throws SystemException if a system exception occurred 404 */ 405 public void updateLinks(long userId, long entryId, long[] linkEntryIds, 406 int typeId) 407 throws com.liferay.portal.kernel.exception.PortalException, 408 com.liferay.portal.kernel.exception.SystemException; 409 }