001 /** 002 * Copyright (c) 2000-2011 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 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.PersistedModelLocalService; 023 024 /** 025 * The interface for the shopping cart local service. 026 * 027 * <p> 028 * 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. 029 * </p> 030 * 031 * @author Brian Wing Shun Chan 032 * @see ShoppingCartLocalServiceUtil 033 * @see com.liferay.portlet.shopping.service.base.ShoppingCartLocalServiceBaseImpl 034 * @see com.liferay.portlet.shopping.service.impl.ShoppingCartLocalServiceImpl 035 * @generated 036 */ 037 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 038 PortalException.class, SystemException.class}) 039 public interface ShoppingCartLocalService extends PersistedModelLocalService { 040 /* 041 * NOTE FOR DEVELOPERS: 042 * 043 * 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. 044 */ 045 046 /** 047 * Adds the shopping cart to the database. Also notifies the appropriate model listeners. 048 * 049 * @param shoppingCart the shopping cart 050 * @return the shopping cart that was added 051 * @throws SystemException if a system exception occurred 052 */ 053 public com.liferay.portlet.shopping.model.ShoppingCart addShoppingCart( 054 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 055 throws com.liferay.portal.kernel.exception.SystemException; 056 057 /** 058 * Creates a new shopping cart with the primary key. Does not add the shopping cart to the database. 059 * 060 * @param cartId the primary key for the new shopping cart 061 * @return the new shopping cart 062 */ 063 public com.liferay.portlet.shopping.model.ShoppingCart createShoppingCart( 064 long cartId); 065 066 /** 067 * Deletes the shopping cart with the primary key from the database. Also notifies the appropriate model listeners. 068 * 069 * @param cartId the primary key of the shopping cart 070 * @throws PortalException if a shopping cart with the primary key could not be found 071 * @throws SystemException if a system exception occurred 072 */ 073 public void deleteShoppingCart(long cartId) 074 throws com.liferay.portal.kernel.exception.PortalException, 075 com.liferay.portal.kernel.exception.SystemException; 076 077 /** 078 * Deletes the shopping cart from the database. Also notifies the appropriate model listeners. 079 * 080 * @param shoppingCart the shopping cart 081 * @throws SystemException if a system exception occurred 082 */ 083 public void deleteShoppingCart( 084 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 085 throws com.liferay.portal.kernel.exception.SystemException; 086 087 /** 088 * Performs a dynamic query on the database and returns the matching rows. 089 * 090 * @param dynamicQuery the dynamic query 091 * @return the matching rows 092 * @throws SystemException if a system exception occurred 093 */ 094 @SuppressWarnings("rawtypes") 095 public java.util.List dynamicQuery( 096 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery) 097 throws com.liferay.portal.kernel.exception.SystemException; 098 099 /** 100 * Performs a dynamic query on the database and returns a range of the matching rows. 101 * 102 * <p> 103 * 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. 104 * </p> 105 * 106 * @param dynamicQuery the dynamic query 107 * @param start the lower bound of the range of model instances 108 * @param end the upper bound of the range of model instances (not inclusive) 109 * @return the range of matching rows 110 * @throws SystemException if a system exception occurred 111 */ 112 @SuppressWarnings("rawtypes") 113 public java.util.List dynamicQuery( 114 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start, 115 int end) throws com.liferay.portal.kernel.exception.SystemException; 116 117 /** 118 * Performs a dynamic query on the database and returns an ordered range of the matching rows. 119 * 120 * <p> 121 * 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. 122 * </p> 123 * 124 * @param dynamicQuery the dynamic query 125 * @param start the lower bound of the range of model instances 126 * @param end the upper bound of the range of model instances (not inclusive) 127 * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) 128 * @return the ordered range of matching rows 129 * @throws SystemException if a system exception occurred 130 */ 131 @SuppressWarnings("rawtypes") 132 public java.util.List dynamicQuery( 133 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start, 134 int end, 135 com.liferay.portal.kernel.util.OrderByComparator orderByComparator) 136 throws com.liferay.portal.kernel.exception.SystemException; 137 138 /** 139 * Returns the number of rows that match the dynamic query. 140 * 141 * @param dynamicQuery the dynamic query 142 * @return the number of rows that match the dynamic query 143 * @throws SystemException if a system exception occurred 144 */ 145 public long dynamicQueryCount( 146 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery) 147 throws com.liferay.portal.kernel.exception.SystemException; 148 149 /** 150 * Returns the shopping cart with the primary key. 151 * 152 * @param cartId the primary key of the shopping cart 153 * @return the shopping cart 154 * @throws PortalException if a shopping cart with the primary key could not be found 155 * @throws SystemException if a system exception occurred 156 */ 157 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 158 public com.liferay.portlet.shopping.model.ShoppingCart getShoppingCart( 159 long cartId) 160 throws com.liferay.portal.kernel.exception.PortalException, 161 com.liferay.portal.kernel.exception.SystemException; 162 163 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 164 public com.liferay.portal.model.PersistedModel getPersistedModel( 165 java.io.Serializable primaryKeyObj) 166 throws com.liferay.portal.kernel.exception.PortalException, 167 com.liferay.portal.kernel.exception.SystemException; 168 169 /** 170 * Returns a range of all the shopping carts. 171 * 172 * <p> 173 * 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. 174 * </p> 175 * 176 * @param start the lower bound of the range of shopping carts 177 * @param end the upper bound of the range of shopping carts (not inclusive) 178 * @return the range of shopping carts 179 * @throws SystemException if a system exception occurred 180 */ 181 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 182 public java.util.List<com.liferay.portlet.shopping.model.ShoppingCart> getShoppingCarts( 183 int start, int end) 184 throws com.liferay.portal.kernel.exception.SystemException; 185 186 /** 187 * Returns the number of shopping carts. 188 * 189 * @return the number of shopping carts 190 * @throws SystemException if a system exception occurred 191 */ 192 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 193 public int getShoppingCartsCount() 194 throws com.liferay.portal.kernel.exception.SystemException; 195 196 /** 197 * Updates the shopping cart in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 198 * 199 * @param shoppingCart the shopping cart 200 * @return the shopping cart that was updated 201 * @throws SystemException if a system exception occurred 202 */ 203 public com.liferay.portlet.shopping.model.ShoppingCart updateShoppingCart( 204 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 205 throws com.liferay.portal.kernel.exception.SystemException; 206 207 /** 208 * Updates the shopping cart in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 209 * 210 * @param shoppingCart the shopping cart 211 * @param merge whether to merge the shopping cart 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. 212 * @return the shopping cart that was updated 213 * @throws SystemException if a system exception occurred 214 */ 215 public com.liferay.portlet.shopping.model.ShoppingCart updateShoppingCart( 216 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart, 217 boolean merge) 218 throws com.liferay.portal.kernel.exception.SystemException; 219 220 /** 221 * Returns the Spring bean ID for this bean. 222 * 223 * @return the Spring bean ID for this bean 224 */ 225 public java.lang.String getBeanIdentifier(); 226 227 /** 228 * Sets the Spring bean ID for this bean. 229 * 230 * @param beanIdentifier the Spring bean ID for this bean 231 */ 232 public void setBeanIdentifier(java.lang.String beanIdentifier); 233 234 public void deleteGroupCarts(long groupId) 235 throws com.liferay.portal.kernel.exception.SystemException; 236 237 public void deleteUserCarts(long userId) 238 throws com.liferay.portal.kernel.exception.SystemException; 239 240 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 241 public com.liferay.portlet.shopping.model.ShoppingCart getCart( 242 long userId, long groupId) 243 throws com.liferay.portal.kernel.exception.PortalException, 244 com.liferay.portal.kernel.exception.SystemException; 245 246 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 247 public java.util.Map<com.liferay.portlet.shopping.model.ShoppingCartItem, java.lang.Integer> getItems( 248 long groupId, java.lang.String itemIds) 249 throws com.liferay.portal.kernel.exception.SystemException; 250 251 public com.liferay.portlet.shopping.model.ShoppingCart updateCart( 252 long userId, long groupId, java.lang.String itemIds, 253 java.lang.String couponCodes, int altShipping, boolean insure) 254 throws com.liferay.portal.kernel.exception.PortalException, 255 com.liferay.portal.kernel.exception.SystemException; 256 }