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.shopping.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 ShoppingCart. 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 ShoppingCartLocalServiceUtil 035 * @see com.liferay.portlet.shopping.service.base.ShoppingCartLocalServiceBaseImpl 036 * @see com.liferay.portlet.shopping.service.impl.ShoppingCartLocalServiceImpl 037 * @generated 038 */ 039 @ProviderType 040 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 041 PortalException.class, SystemException.class}) 042 public interface ShoppingCartLocalService extends BaseLocalService, 043 PersistedModelLocalService { 044 /* 045 * NOTE FOR DEVELOPERS: 046 * 047 * Never modify or reference this interface directly. Always use {@link ShoppingCartLocalServiceUtil} to access the shopping cart local service. Add custom service methods to {@link com.liferay.portlet.shopping.service.impl.ShoppingCartLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. 048 */ 049 050 /** 051 * Adds the shopping cart to the database. Also notifies the appropriate model listeners. 052 * 053 * @param shoppingCart the shopping cart 054 * @return the shopping cart that was added 055 * @throws SystemException if a system exception occurred 056 */ 057 public com.liferay.portlet.shopping.model.ShoppingCart addShoppingCart( 058 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 059 throws com.liferay.portal.kernel.exception.SystemException; 060 061 /** 062 * Creates a new shopping cart with the primary key. Does not add the shopping cart to the database. 063 * 064 * @param cartId the primary key for the new shopping cart 065 * @return the new shopping cart 066 */ 067 public com.liferay.portlet.shopping.model.ShoppingCart createShoppingCart( 068 long cartId); 069 070 /** 071 * Deletes the shopping cart with the primary key from the database. Also notifies the appropriate model listeners. 072 * 073 * @param cartId the primary key of the shopping cart 074 * @return the shopping cart that was removed 075 * @throws PortalException if a shopping cart with the primary key could not be found 076 * @throws SystemException if a system exception occurred 077 */ 078 public com.liferay.portlet.shopping.model.ShoppingCart deleteShoppingCart( 079 long cartId) 080 throws com.liferay.portal.kernel.exception.PortalException, 081 com.liferay.portal.kernel.exception.SystemException; 082 083 /** 084 * Deletes the shopping cart from the database. Also notifies the appropriate model listeners. 085 * 086 * @param shoppingCart the shopping cart 087 * @return the shopping cart that was removed 088 * @throws SystemException if a system exception occurred 089 */ 090 public com.liferay.portlet.shopping.model.ShoppingCart deleteShoppingCart( 091 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 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.shopping.model.impl.ShoppingCartModelImpl}. 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.shopping.model.impl.ShoppingCartModelImpl}. 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.shopping.model.ShoppingCart fetchShoppingCart( 173 long cartId) throws com.liferay.portal.kernel.exception.SystemException; 174 175 /** 176 * Returns the shopping cart with the primary key. 177 * 178 * @param cartId the primary key of the shopping cart 179 * @return the shopping cart 180 * @throws PortalException if a shopping cart with the primary key could not be found 181 * @throws SystemException if a system exception occurred 182 */ 183 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 184 public com.liferay.portlet.shopping.model.ShoppingCart getShoppingCart( 185 long cartId) 186 throws com.liferay.portal.kernel.exception.PortalException, 187 com.liferay.portal.kernel.exception.SystemException; 188 189 @Override 190 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 191 public com.liferay.portal.model.PersistedModel getPersistedModel( 192 java.io.Serializable primaryKeyObj) 193 throws com.liferay.portal.kernel.exception.PortalException, 194 com.liferay.portal.kernel.exception.SystemException; 195 196 /** 197 * Returns a range of all the shopping carts. 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. 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.shopping.model.impl.ShoppingCartModelImpl}. 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. 201 * </p> 202 * 203 * @param start the lower bound of the range of shopping carts 204 * @param end the upper bound of the range of shopping carts (not inclusive) 205 * @return the range of shopping carts 206 * @throws SystemException if a system exception occurred 207 */ 208 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 209 public java.util.List<com.liferay.portlet.shopping.model.ShoppingCart> getShoppingCarts( 210 int start, int end) 211 throws com.liferay.portal.kernel.exception.SystemException; 212 213 /** 214 * Returns the number of shopping carts. 215 * 216 * @return the number of shopping carts 217 * @throws SystemException if a system exception occurred 218 */ 219 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 220 public int getShoppingCartsCount() 221 throws com.liferay.portal.kernel.exception.SystemException; 222 223 /** 224 * Updates the shopping cart in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 225 * 226 * @param shoppingCart the shopping cart 227 * @return the shopping cart that was updated 228 * @throws SystemException if a system exception occurred 229 */ 230 public com.liferay.portlet.shopping.model.ShoppingCart updateShoppingCart( 231 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 232 throws com.liferay.portal.kernel.exception.SystemException; 233 234 /** 235 * Returns the Spring bean ID for this bean. 236 * 237 * @return the Spring bean ID for this bean 238 */ 239 public java.lang.String getBeanIdentifier(); 240 241 /** 242 * Sets the Spring bean ID for this bean. 243 * 244 * @param beanIdentifier the Spring bean ID for this bean 245 */ 246 public void setBeanIdentifier(java.lang.String beanIdentifier); 247 248 public void deleteGroupCarts(long groupId) 249 throws com.liferay.portal.kernel.exception.SystemException; 250 251 public void deleteUserCarts(long userId) 252 throws com.liferay.portal.kernel.exception.SystemException; 253 254 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 255 public com.liferay.portlet.shopping.model.ShoppingCart getCart( 256 long userId, long groupId) 257 throws com.liferay.portal.kernel.exception.PortalException, 258 com.liferay.portal.kernel.exception.SystemException; 259 260 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 261 public java.util.Map<com.liferay.portlet.shopping.model.ShoppingCartItem, java.lang.Integer> getItems( 262 long groupId, java.lang.String itemIds) 263 throws com.liferay.portal.kernel.exception.SystemException; 264 265 public com.liferay.portlet.shopping.model.ShoppingCart updateCart( 266 long userId, long groupId, java.lang.String itemIds, 267 java.lang.String couponCodes, int altShipping, boolean insure) 268 throws com.liferay.portal.kernel.exception.PortalException, 269 com.liferay.portal.kernel.exception.SystemException; 270 }