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