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.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 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 150 public com.liferay.portlet.shopping.model.ShoppingCart fetchShoppingCart( 151 long cartId) throws com.liferay.portal.kernel.exception.SystemException; 152 153 /** 154 * Returns the shopping cart with the primary key. 155 * 156 * @param cartId the primary key of the shopping cart 157 * @return the shopping cart 158 * @throws PortalException if a shopping cart with the primary key could not be found 159 * @throws SystemException if a system exception occurred 160 */ 161 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 162 public com.liferay.portlet.shopping.model.ShoppingCart getShoppingCart( 163 long cartId) 164 throws com.liferay.portal.kernel.exception.PortalException, 165 com.liferay.portal.kernel.exception.SystemException; 166 167 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 168 public com.liferay.portal.model.PersistedModel getPersistedModel( 169 java.io.Serializable primaryKeyObj) 170 throws com.liferay.portal.kernel.exception.PortalException, 171 com.liferay.portal.kernel.exception.SystemException; 172 173 /** 174 * Returns a range of all the shopping carts. 175 * 176 * <p> 177 * 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. 178 * </p> 179 * 180 * @param start the lower bound of the range of shopping carts 181 * @param end the upper bound of the range of shopping carts (not inclusive) 182 * @return the range of shopping carts 183 * @throws SystemException if a system exception occurred 184 */ 185 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 186 public java.util.List<com.liferay.portlet.shopping.model.ShoppingCart> getShoppingCarts( 187 int start, int end) 188 throws com.liferay.portal.kernel.exception.SystemException; 189 190 /** 191 * Returns the number of shopping carts. 192 * 193 * @return the number of shopping carts 194 * @throws SystemException if a system exception occurred 195 */ 196 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 197 public int getShoppingCartsCount() 198 throws com.liferay.portal.kernel.exception.SystemException; 199 200 /** 201 * Updates the shopping cart in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 202 * 203 * @param shoppingCart the shopping cart 204 * @return the shopping cart that was updated 205 * @throws SystemException if a system exception occurred 206 */ 207 public com.liferay.portlet.shopping.model.ShoppingCart updateShoppingCart( 208 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart) 209 throws com.liferay.portal.kernel.exception.SystemException; 210 211 /** 212 * Updates the shopping cart in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 213 * 214 * @param shoppingCart the shopping cart 215 * @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. 216 * @return the shopping cart that was updated 217 * @throws SystemException if a system exception occurred 218 */ 219 public com.liferay.portlet.shopping.model.ShoppingCart updateShoppingCart( 220 com.liferay.portlet.shopping.model.ShoppingCart shoppingCart, 221 boolean merge) 222 throws com.liferay.portal.kernel.exception.SystemException; 223 224 /** 225 * Returns the Spring bean ID for this bean. 226 * 227 * @return the Spring bean ID for this bean 228 */ 229 public java.lang.String getBeanIdentifier(); 230 231 /** 232 * Sets the Spring bean ID for this bean. 233 * 234 * @param beanIdentifier the Spring bean ID for this bean 235 */ 236 public void setBeanIdentifier(java.lang.String beanIdentifier); 237 238 public void deleteGroupCarts(long groupId) 239 throws com.liferay.portal.kernel.exception.SystemException; 240 241 public void deleteUserCarts(long userId) 242 throws com.liferay.portal.kernel.exception.SystemException; 243 244 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 245 public com.liferay.portlet.shopping.model.ShoppingCart getCart( 246 long userId, long groupId) 247 throws com.liferay.portal.kernel.exception.PortalException, 248 com.liferay.portal.kernel.exception.SystemException; 249 250 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 251 public java.util.Map<com.liferay.portlet.shopping.model.ShoppingCartItem, java.lang.Integer> getItems( 252 long groupId, java.lang.String itemIds) 253 throws com.liferay.portal.kernel.exception.SystemException; 254 255 public com.liferay.portlet.shopping.model.ShoppingCart updateCart( 256 long userId, long groupId, java.lang.String itemIds, 257 java.lang.String couponCodes, int altShipping, boolean insure) 258 throws com.liferay.portal.kernel.exception.PortalException, 259 com.liferay.portal.kernel.exception.SystemException; 260 }