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.BaseLocalService;
023    import com.liferay.portal.service.PersistedModelLocalService;
024    
025    /**
026     * The interface for the shopping item 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 ShoppingItemLocalServiceUtil
034     * @see com.liferay.portlet.shopping.service.base.ShoppingItemLocalServiceBaseImpl
035     * @see com.liferay.portlet.shopping.service.impl.ShoppingItemLocalServiceImpl
036     * @generated
037     */
038    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
039            PortalException.class, SystemException.class})
040    public interface ShoppingItemLocalService extends BaseLocalService,
041            PersistedModelLocalService {
042            /*
043             * NOTE FOR DEVELOPERS:
044             *
045             * Never modify or reference this interface directly. Always use {@link ShoppingItemLocalServiceUtil} to access the shopping item local service. Add custom service methods to {@link com.liferay.portlet.shopping.service.impl.ShoppingItemLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
046             */
047    
048            /**
049            * Adds the shopping item to the database. Also notifies the appropriate model listeners.
050            *
051            * @param shoppingItem the shopping item
052            * @return the shopping item that was added
053            * @throws SystemException if a system exception occurred
054            */
055            public com.liferay.portlet.shopping.model.ShoppingItem addShoppingItem(
056                    com.liferay.portlet.shopping.model.ShoppingItem shoppingItem)
057                    throws com.liferay.portal.kernel.exception.SystemException;
058    
059            /**
060            * Creates a new shopping item with the primary key. Does not add the shopping item to the database.
061            *
062            * @param itemId the primary key for the new shopping item
063            * @return the new shopping item
064            */
065            public com.liferay.portlet.shopping.model.ShoppingItem createShoppingItem(
066                    long itemId);
067    
068            /**
069            * Deletes the shopping item with the primary key from the database. Also notifies the appropriate model listeners.
070            *
071            * @param itemId the primary key of the shopping item
072            * @return the shopping item that was removed
073            * @throws PortalException if a shopping item with the primary key could not be found
074            * @throws SystemException if a system exception occurred
075            */
076            public com.liferay.portlet.shopping.model.ShoppingItem deleteShoppingItem(
077                    long itemId)
078                    throws com.liferay.portal.kernel.exception.PortalException,
079                            com.liferay.portal.kernel.exception.SystemException;
080    
081            /**
082            * Deletes the shopping item from the database. Also notifies the appropriate model listeners.
083            *
084            * @param shoppingItem the shopping item
085            * @return the shopping item that was removed
086            * @throws SystemException if a system exception occurred
087            */
088            public com.liferay.portlet.shopping.model.ShoppingItem deleteShoppingItem(
089                    com.liferay.portlet.shopping.model.ShoppingItem shoppingItem)
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.shopping.model.ShoppingItem fetchShoppingItem(
158                    long itemId) throws com.liferay.portal.kernel.exception.SystemException;
159    
160            /**
161            * Returns the shopping item with the primary key.
162            *
163            * @param itemId the primary key of the shopping item
164            * @return the shopping item
165            * @throws PortalException if a shopping item 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.shopping.model.ShoppingItem getShoppingItem(
170                    long itemId)
171                    throws com.liferay.portal.kernel.exception.PortalException,
172                            com.liferay.portal.kernel.exception.SystemException;
173    
174            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
175            public com.liferay.portal.model.PersistedModel getPersistedModel(
176                    java.io.Serializable primaryKeyObj)
177                    throws com.liferay.portal.kernel.exception.PortalException,
178                            com.liferay.portal.kernel.exception.SystemException;
179    
180            /**
181            * Returns a range of all the shopping items.
182            *
183            * <p>
184            * 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.
185            * </p>
186            *
187            * @param start the lower bound of the range of shopping items
188            * @param end the upper bound of the range of shopping items (not inclusive)
189            * @return the range of shopping items
190            * @throws SystemException if a system exception occurred
191            */
192            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
193            public java.util.List<com.liferay.portlet.shopping.model.ShoppingItem> getShoppingItems(
194                    int start, int end)
195                    throws com.liferay.portal.kernel.exception.SystemException;
196    
197            /**
198            * Returns the number of shopping items.
199            *
200            * @return the number of shopping items
201            * @throws SystemException if a system exception occurred
202            */
203            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
204            public int getShoppingItemsCount()
205                    throws com.liferay.portal.kernel.exception.SystemException;
206    
207            /**
208            * Updates the shopping item in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
209            *
210            * @param shoppingItem the shopping item
211            * @return the shopping item that was updated
212            * @throws SystemException if a system exception occurred
213            */
214            public com.liferay.portlet.shopping.model.ShoppingItem updateShoppingItem(
215                    com.liferay.portlet.shopping.model.ShoppingItem shoppingItem)
216                    throws com.liferay.portal.kernel.exception.SystemException;
217    
218            /**
219            * Returns the Spring bean ID for this bean.
220            *
221            * @return the Spring bean ID for this bean
222            */
223            public java.lang.String getBeanIdentifier();
224    
225            /**
226            * Sets the Spring bean ID for this bean.
227            *
228            * @param beanIdentifier the Spring bean ID for this bean
229            */
230            public void setBeanIdentifier(java.lang.String beanIdentifier);
231    
232            public void addBookItems(long userId, long groupId, long categoryId,
233                    java.lang.String[] isbns)
234                    throws com.liferay.portal.kernel.exception.PortalException,
235                            com.liferay.portal.kernel.exception.SystemException;
236    
237            public com.liferay.portlet.shopping.model.ShoppingItem addItem(
238                    long userId, long groupId, long categoryId, java.lang.String sku,
239                    java.lang.String name, java.lang.String description,
240                    java.lang.String properties, java.lang.String fieldsQuantities,
241                    boolean requiresShipping, int stockQuantity, boolean featured,
242                    java.lang.Boolean sale, boolean smallImage,
243                    java.lang.String smallImageURL, java.io.File smallImageFile,
244                    boolean mediumImage, java.lang.String mediumImageURL,
245                    java.io.File mediumImageFile, boolean largeImage,
246                    java.lang.String largeImageURL, java.io.File largeImageFile,
247                    java.util.List<com.liferay.portlet.shopping.model.ShoppingItemField> itemFields,
248                    java.util.List<com.liferay.portlet.shopping.model.ShoppingItemPrice> itemPrices,
249                    com.liferay.portal.service.ServiceContext serviceContext)
250                    throws com.liferay.portal.kernel.exception.PortalException,
251                            com.liferay.portal.kernel.exception.SystemException;
252    
253            public void addItemResources(long itemId, boolean addGroupPermissions,
254                    boolean addGuestPermissions)
255                    throws com.liferay.portal.kernel.exception.PortalException,
256                            com.liferay.portal.kernel.exception.SystemException;
257    
258            public void addItemResources(long itemId,
259                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
260                    throws com.liferay.portal.kernel.exception.PortalException,
261                            com.liferay.portal.kernel.exception.SystemException;
262    
263            public void addItemResources(
264                    com.liferay.portlet.shopping.model.ShoppingItem item,
265                    boolean addGroupPermissions, boolean addGuestPermissions)
266                    throws com.liferay.portal.kernel.exception.PortalException,
267                            com.liferay.portal.kernel.exception.SystemException;
268    
269            public void addItemResources(
270                    com.liferay.portlet.shopping.model.ShoppingItem item,
271                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
272                    throws com.liferay.portal.kernel.exception.PortalException,
273                            com.liferay.portal.kernel.exception.SystemException;
274    
275            public void deleteItem(long itemId)
276                    throws com.liferay.portal.kernel.exception.PortalException,
277                            com.liferay.portal.kernel.exception.SystemException;
278    
279            public void deleteItem(com.liferay.portlet.shopping.model.ShoppingItem item)
280                    throws com.liferay.portal.kernel.exception.PortalException,
281                            com.liferay.portal.kernel.exception.SystemException;
282    
283            public void deleteItems(long groupId, long categoryId)
284                    throws com.liferay.portal.kernel.exception.PortalException,
285                            com.liferay.portal.kernel.exception.SystemException;
286    
287            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
288            public int getCategoriesItemsCount(long groupId,
289                    java.util.List<java.lang.Long> categoryIds)
290                    throws com.liferay.portal.kernel.exception.SystemException;
291    
292            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
293            public java.util.List<com.liferay.portlet.shopping.model.ShoppingItem> getFeaturedItems(
294                    long groupId, long categoryId, int numOfItems)
295                    throws com.liferay.portal.kernel.exception.SystemException;
296    
297            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
298            public com.liferay.portlet.shopping.model.ShoppingItem getItem(long itemId)
299                    throws com.liferay.portal.kernel.exception.PortalException,
300                            com.liferay.portal.kernel.exception.SystemException;
301    
302            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
303            public com.liferay.portlet.shopping.model.ShoppingItem getItem(
304                    long companyId, java.lang.String sku)
305                    throws com.liferay.portal.kernel.exception.PortalException,
306                            com.liferay.portal.kernel.exception.SystemException;
307    
308            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
309            public com.liferay.portlet.shopping.model.ShoppingItem getItemByLargeImageId(
310                    long largeImageId)
311                    throws com.liferay.portal.kernel.exception.PortalException,
312                            com.liferay.portal.kernel.exception.SystemException;
313    
314            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
315            public com.liferay.portlet.shopping.model.ShoppingItem getItemByMediumImageId(
316                    long mediumImageId)
317                    throws com.liferay.portal.kernel.exception.PortalException,
318                            com.liferay.portal.kernel.exception.SystemException;
319    
320            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
321            public com.liferay.portlet.shopping.model.ShoppingItem getItemBySmallImageId(
322                    long smallImageId)
323                    throws com.liferay.portal.kernel.exception.PortalException,
324                            com.liferay.portal.kernel.exception.SystemException;
325    
326            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
327            public java.util.List<com.liferay.portlet.shopping.model.ShoppingItem> getItems(
328                    long groupId, long categoryId)
329                    throws com.liferay.portal.kernel.exception.SystemException;
330    
331            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
332            public java.util.List<com.liferay.portlet.shopping.model.ShoppingItem> getItems(
333                    long groupId, long categoryId, int start, int end,
334                    com.liferay.portal.kernel.util.OrderByComparator obc)
335                    throws com.liferay.portal.kernel.exception.SystemException;
336    
337            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
338            public int getItemsCount(long groupId, long categoryId)
339                    throws com.liferay.portal.kernel.exception.SystemException;
340    
341            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
342            public com.liferay.portlet.shopping.model.ShoppingItem[] getItemsPrevAndNext(
343                    long itemId, com.liferay.portal.kernel.util.OrderByComparator obc)
344                    throws com.liferay.portal.kernel.exception.PortalException,
345                            com.liferay.portal.kernel.exception.SystemException;
346    
347            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
348            public java.util.List<com.liferay.portlet.shopping.model.ShoppingItem> getSaleItems(
349                    long groupId, long categoryId, int numOfItems)
350                    throws com.liferay.portal.kernel.exception.SystemException;
351    
352            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
353            public java.util.List<com.liferay.portlet.shopping.model.ShoppingItem> search(
354                    long groupId, long[] categoryIds, java.lang.String keywords, int start,
355                    int end) throws com.liferay.portal.kernel.exception.SystemException;
356    
357            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
358            public int searchCount(long groupId, long[] categoryIds,
359                    java.lang.String keywords)
360                    throws com.liferay.portal.kernel.exception.SystemException;
361    
362            public com.liferay.portlet.shopping.model.ShoppingItem updateItem(
363                    long userId, long itemId, long groupId, long categoryId,
364                    java.lang.String sku, java.lang.String name,
365                    java.lang.String description, java.lang.String properties,
366                    java.lang.String fieldsQuantities, boolean requiresShipping,
367                    int stockQuantity, boolean featured, java.lang.Boolean sale,
368                    boolean smallImage, java.lang.String smallImageURL,
369                    java.io.File smallImageFile, boolean mediumImage,
370                    java.lang.String mediumImageURL, java.io.File mediumImageFile,
371                    boolean largeImage, java.lang.String largeImageURL,
372                    java.io.File largeImageFile,
373                    java.util.List<com.liferay.portlet.shopping.model.ShoppingItemField> itemFields,
374                    java.util.List<com.liferay.portlet.shopping.model.ShoppingItemPrice> itemPrices,
375                    com.liferay.portal.service.ServiceContext serviceContext)
376                    throws com.liferay.portal.kernel.exception.PortalException,
377                            com.liferay.portal.kernel.exception.SystemException;
378    }