001    /**
002     * Copyright (c) 2000-present 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.base;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.bean.BeanReference;
020    import com.liferay.portal.kernel.bean.IdentifiableBean;
021    import com.liferay.portal.kernel.dao.db.DB;
022    import com.liferay.portal.kernel.dao.db.DBFactoryUtil;
023    import com.liferay.portal.kernel.dao.jdbc.SqlUpdate;
024    import com.liferay.portal.kernel.dao.jdbc.SqlUpdateFactoryUtil;
025    import com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery;
026    import com.liferay.portal.kernel.dao.orm.DefaultActionableDynamicQuery;
027    import com.liferay.portal.kernel.dao.orm.DynamicQuery;
028    import com.liferay.portal.kernel.dao.orm.DynamicQueryFactoryUtil;
029    import com.liferay.portal.kernel.dao.orm.Projection;
030    import com.liferay.portal.kernel.exception.PortalException;
031    import com.liferay.portal.kernel.exception.SystemException;
032    import com.liferay.portal.kernel.search.Indexable;
033    import com.liferay.portal.kernel.search.IndexableType;
034    import com.liferay.portal.kernel.util.OrderByComparator;
035    import com.liferay.portal.model.PersistedModel;
036    import com.liferay.portal.service.BaseLocalServiceImpl;
037    import com.liferay.portal.service.PersistedModelLocalServiceRegistry;
038    import com.liferay.portal.service.persistence.UserFinder;
039    import com.liferay.portal.service.persistence.UserPersistence;
040    import com.liferay.portal.util.PortalUtil;
041    
042    import com.liferay.portlet.shopping.model.ShoppingCategory;
043    import com.liferay.portlet.shopping.service.ShoppingCategoryLocalService;
044    import com.liferay.portlet.shopping.service.persistence.ShoppingCategoryPersistence;
045    import com.liferay.portlet.shopping.service.persistence.ShoppingItemFinder;
046    import com.liferay.portlet.shopping.service.persistence.ShoppingItemPersistence;
047    
048    import java.io.Serializable;
049    
050    import java.util.List;
051    
052    import javax.sql.DataSource;
053    
054    /**
055     * Provides the base implementation for the shopping category local service.
056     *
057     * <p>
058     * This implementation exists only as a container for the default service methods generated by ServiceBuilder. All custom service methods should be put in {@link com.liferay.portlet.shopping.service.impl.ShoppingCategoryLocalServiceImpl}.
059     * </p>
060     *
061     * @author Brian Wing Shun Chan
062     * @see com.liferay.portlet.shopping.service.impl.ShoppingCategoryLocalServiceImpl
063     * @see com.liferay.portlet.shopping.service.ShoppingCategoryLocalServiceUtil
064     * @generated
065     */
066    @ProviderType
067    public abstract class ShoppingCategoryLocalServiceBaseImpl
068            extends BaseLocalServiceImpl implements ShoppingCategoryLocalService,
069                    IdentifiableBean {
070            /*
071             * NOTE FOR DEVELOPERS:
072             *
073             * Never modify or reference this class directly. Always use {@link com.liferay.portlet.shopping.service.ShoppingCategoryLocalServiceUtil} to access the shopping category local service.
074             */
075    
076            /**
077             * Adds the shopping category to the database. Also notifies the appropriate model listeners.
078             *
079             * @param shoppingCategory the shopping category
080             * @return the shopping category that was added
081             */
082            @Indexable(type = IndexableType.REINDEX)
083            @Override
084            public ShoppingCategory addShoppingCategory(
085                    ShoppingCategory shoppingCategory) {
086                    shoppingCategory.setNew(true);
087    
088                    return shoppingCategoryPersistence.update(shoppingCategory);
089            }
090    
091            /**
092             * Creates a new shopping category with the primary key. Does not add the shopping category to the database.
093             *
094             * @param categoryId the primary key for the new shopping category
095             * @return the new shopping category
096             */
097            @Override
098            public ShoppingCategory createShoppingCategory(long categoryId) {
099                    return shoppingCategoryPersistence.create(categoryId);
100            }
101    
102            /**
103             * Deletes the shopping category with the primary key from the database. Also notifies the appropriate model listeners.
104             *
105             * @param categoryId the primary key of the shopping category
106             * @return the shopping category that was removed
107             * @throws PortalException if a shopping category with the primary key could not be found
108             */
109            @Indexable(type = IndexableType.DELETE)
110            @Override
111            public ShoppingCategory deleteShoppingCategory(long categoryId)
112                    throws PortalException {
113                    return shoppingCategoryPersistence.remove(categoryId);
114            }
115    
116            /**
117             * Deletes the shopping category from the database. Also notifies the appropriate model listeners.
118             *
119             * @param shoppingCategory the shopping category
120             * @return the shopping category that was removed
121             */
122            @Indexable(type = IndexableType.DELETE)
123            @Override
124            public ShoppingCategory deleteShoppingCategory(
125                    ShoppingCategory shoppingCategory) {
126                    return shoppingCategoryPersistence.remove(shoppingCategory);
127            }
128    
129            @Override
130            public DynamicQuery dynamicQuery() {
131                    Class<?> clazz = getClass();
132    
133                    return DynamicQueryFactoryUtil.forClass(ShoppingCategory.class,
134                            clazz.getClassLoader());
135            }
136    
137            /**
138             * Performs a dynamic query on the database and returns the matching rows.
139             *
140             * @param dynamicQuery the dynamic query
141             * @return the matching rows
142             */
143            @Override
144            public <T> List<T> dynamicQuery(DynamicQuery dynamicQuery) {
145                    return shoppingCategoryPersistence.findWithDynamicQuery(dynamicQuery);
146            }
147    
148            /**
149             * Performs a dynamic query on the database and returns a range of the matching rows.
150             *
151             * <p>
152             * 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.ShoppingCategoryModelImpl}. 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.
153             * </p>
154             *
155             * @param dynamicQuery the dynamic query
156             * @param start the lower bound of the range of model instances
157             * @param end the upper bound of the range of model instances (not inclusive)
158             * @return the range of matching rows
159             */
160            @Override
161            public <T> List<T> dynamicQuery(DynamicQuery dynamicQuery, int start,
162                    int end) {
163                    return shoppingCategoryPersistence.findWithDynamicQuery(dynamicQuery,
164                            start, end);
165            }
166    
167            /**
168             * Performs a dynamic query on the database and returns an ordered range of the matching rows.
169             *
170             * <p>
171             * 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.ShoppingCategoryModelImpl}. 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.
172             * </p>
173             *
174             * @param dynamicQuery the dynamic query
175             * @param start the lower bound of the range of model instances
176             * @param end the upper bound of the range of model instances (not inclusive)
177             * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
178             * @return the ordered range of matching rows
179             */
180            @Override
181            public <T> List<T> dynamicQuery(DynamicQuery dynamicQuery, int start,
182                    int end, OrderByComparator<T> orderByComparator) {
183                    return shoppingCategoryPersistence.findWithDynamicQuery(dynamicQuery,
184                            start, end, orderByComparator);
185            }
186    
187            /**
188             * Returns the number of rows matching the dynamic query.
189             *
190             * @param dynamicQuery the dynamic query
191             * @return the number of rows matching the dynamic query
192             */
193            @Override
194            public long dynamicQueryCount(DynamicQuery dynamicQuery) {
195                    return shoppingCategoryPersistence.countWithDynamicQuery(dynamicQuery);
196            }
197    
198            /**
199             * Returns the number of rows matching the dynamic query.
200             *
201             * @param dynamicQuery the dynamic query
202             * @param projection the projection to apply to the query
203             * @return the number of rows matching the dynamic query
204             */
205            @Override
206            public long dynamicQueryCount(DynamicQuery dynamicQuery,
207                    Projection projection) {
208                    return shoppingCategoryPersistence.countWithDynamicQuery(dynamicQuery,
209                            projection);
210            }
211    
212            @Override
213            public ShoppingCategory fetchShoppingCategory(long categoryId) {
214                    return shoppingCategoryPersistence.fetchByPrimaryKey(categoryId);
215            }
216    
217            /**
218             * Returns the shopping category with the primary key.
219             *
220             * @param categoryId the primary key of the shopping category
221             * @return the shopping category
222             * @throws PortalException if a shopping category with the primary key could not be found
223             */
224            @Override
225            public ShoppingCategory getShoppingCategory(long categoryId)
226                    throws PortalException {
227                    return shoppingCategoryPersistence.findByPrimaryKey(categoryId);
228            }
229    
230            @Override
231            public ActionableDynamicQuery getActionableDynamicQuery() {
232                    ActionableDynamicQuery actionableDynamicQuery = new DefaultActionableDynamicQuery();
233    
234                    actionableDynamicQuery.setBaseLocalService(com.liferay.portlet.shopping.service.ShoppingCategoryLocalServiceUtil.getService());
235                    actionableDynamicQuery.setClass(ShoppingCategory.class);
236                    actionableDynamicQuery.setClassLoader(getClassLoader());
237    
238                    actionableDynamicQuery.setPrimaryKeyPropertyName("categoryId");
239    
240                    return actionableDynamicQuery;
241            }
242    
243            protected void initActionableDynamicQuery(
244                    ActionableDynamicQuery actionableDynamicQuery) {
245                    actionableDynamicQuery.setBaseLocalService(com.liferay.portlet.shopping.service.ShoppingCategoryLocalServiceUtil.getService());
246                    actionableDynamicQuery.setClass(ShoppingCategory.class);
247                    actionableDynamicQuery.setClassLoader(getClassLoader());
248    
249                    actionableDynamicQuery.setPrimaryKeyPropertyName("categoryId");
250            }
251    
252            /**
253             * @throws PortalException
254             */
255            @Override
256            public PersistedModel deletePersistedModel(PersistedModel persistedModel)
257                    throws PortalException {
258                    return shoppingCategoryLocalService.deleteShoppingCategory((ShoppingCategory)persistedModel);
259            }
260    
261            @Override
262            public PersistedModel getPersistedModel(Serializable primaryKeyObj)
263                    throws PortalException {
264                    return shoppingCategoryPersistence.findByPrimaryKey(primaryKeyObj);
265            }
266    
267            /**
268             * Returns a range of all the shopping categories.
269             *
270             * <p>
271             * 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.ShoppingCategoryModelImpl}. 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.
272             * </p>
273             *
274             * @param start the lower bound of the range of shopping categories
275             * @param end the upper bound of the range of shopping categories (not inclusive)
276             * @return the range of shopping categories
277             */
278            @Override
279            public List<ShoppingCategory> getShoppingCategories(int start, int end) {
280                    return shoppingCategoryPersistence.findAll(start, end);
281            }
282    
283            /**
284             * Returns the number of shopping categories.
285             *
286             * @return the number of shopping categories
287             */
288            @Override
289            public int getShoppingCategoriesCount() {
290                    return shoppingCategoryPersistence.countAll();
291            }
292    
293            /**
294             * Updates the shopping category in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
295             *
296             * @param shoppingCategory the shopping category
297             * @return the shopping category that was updated
298             */
299            @Indexable(type = IndexableType.REINDEX)
300            @Override
301            public ShoppingCategory updateShoppingCategory(
302                    ShoppingCategory shoppingCategory) {
303                    return shoppingCategoryPersistence.update(shoppingCategory);
304            }
305    
306            /**
307             * Returns the shopping category local service.
308             *
309             * @return the shopping category local service
310             */
311            public com.liferay.portlet.shopping.service.ShoppingCategoryLocalService getShoppingCategoryLocalService() {
312                    return shoppingCategoryLocalService;
313            }
314    
315            /**
316             * Sets the shopping category local service.
317             *
318             * @param shoppingCategoryLocalService the shopping category local service
319             */
320            public void setShoppingCategoryLocalService(
321                    com.liferay.portlet.shopping.service.ShoppingCategoryLocalService shoppingCategoryLocalService) {
322                    this.shoppingCategoryLocalService = shoppingCategoryLocalService;
323            }
324    
325            /**
326             * Returns the shopping category remote service.
327             *
328             * @return the shopping category remote service
329             */
330            public com.liferay.portlet.shopping.service.ShoppingCategoryService getShoppingCategoryService() {
331                    return shoppingCategoryService;
332            }
333    
334            /**
335             * Sets the shopping category remote service.
336             *
337             * @param shoppingCategoryService the shopping category remote service
338             */
339            public void setShoppingCategoryService(
340                    com.liferay.portlet.shopping.service.ShoppingCategoryService shoppingCategoryService) {
341                    this.shoppingCategoryService = shoppingCategoryService;
342            }
343    
344            /**
345             * Returns the shopping category persistence.
346             *
347             * @return the shopping category persistence
348             */
349            public ShoppingCategoryPersistence getShoppingCategoryPersistence() {
350                    return shoppingCategoryPersistence;
351            }
352    
353            /**
354             * Sets the shopping category persistence.
355             *
356             * @param shoppingCategoryPersistence the shopping category persistence
357             */
358            public void setShoppingCategoryPersistence(
359                    ShoppingCategoryPersistence shoppingCategoryPersistence) {
360                    this.shoppingCategoryPersistence = shoppingCategoryPersistence;
361            }
362    
363            /**
364             * Returns the counter local service.
365             *
366             * @return the counter local service
367             */
368            public com.liferay.counter.service.CounterLocalService getCounterLocalService() {
369                    return counterLocalService;
370            }
371    
372            /**
373             * Sets the counter local service.
374             *
375             * @param counterLocalService the counter local service
376             */
377            public void setCounterLocalService(
378                    com.liferay.counter.service.CounterLocalService counterLocalService) {
379                    this.counterLocalService = counterLocalService;
380            }
381    
382            /**
383             * Returns the resource local service.
384             *
385             * @return the resource local service
386             */
387            public com.liferay.portal.service.ResourceLocalService getResourceLocalService() {
388                    return resourceLocalService;
389            }
390    
391            /**
392             * Sets the resource local service.
393             *
394             * @param resourceLocalService the resource local service
395             */
396            public void setResourceLocalService(
397                    com.liferay.portal.service.ResourceLocalService resourceLocalService) {
398                    this.resourceLocalService = resourceLocalService;
399            }
400    
401            /**
402             * Returns the user local service.
403             *
404             * @return the user local service
405             */
406            public com.liferay.portal.service.UserLocalService getUserLocalService() {
407                    return userLocalService;
408            }
409    
410            /**
411             * Sets the user local service.
412             *
413             * @param userLocalService the user local service
414             */
415            public void setUserLocalService(
416                    com.liferay.portal.service.UserLocalService userLocalService) {
417                    this.userLocalService = userLocalService;
418            }
419    
420            /**
421             * Returns the user remote service.
422             *
423             * @return the user remote service
424             */
425            public com.liferay.portal.service.UserService getUserService() {
426                    return userService;
427            }
428    
429            /**
430             * Sets the user remote service.
431             *
432             * @param userService the user remote service
433             */
434            public void setUserService(
435                    com.liferay.portal.service.UserService userService) {
436                    this.userService = userService;
437            }
438    
439            /**
440             * Returns the user persistence.
441             *
442             * @return the user persistence
443             */
444            public UserPersistence getUserPersistence() {
445                    return userPersistence;
446            }
447    
448            /**
449             * Sets the user persistence.
450             *
451             * @param userPersistence the user persistence
452             */
453            public void setUserPersistence(UserPersistence userPersistence) {
454                    this.userPersistence = userPersistence;
455            }
456    
457            /**
458             * Returns the user finder.
459             *
460             * @return the user finder
461             */
462            public UserFinder getUserFinder() {
463                    return userFinder;
464            }
465    
466            /**
467             * Sets the user finder.
468             *
469             * @param userFinder the user finder
470             */
471            public void setUserFinder(UserFinder userFinder) {
472                    this.userFinder = userFinder;
473            }
474    
475            /**
476             * Returns the shopping item local service.
477             *
478             * @return the shopping item local service
479             */
480            public com.liferay.portlet.shopping.service.ShoppingItemLocalService getShoppingItemLocalService() {
481                    return shoppingItemLocalService;
482            }
483    
484            /**
485             * Sets the shopping item local service.
486             *
487             * @param shoppingItemLocalService the shopping item local service
488             */
489            public void setShoppingItemLocalService(
490                    com.liferay.portlet.shopping.service.ShoppingItemLocalService shoppingItemLocalService) {
491                    this.shoppingItemLocalService = shoppingItemLocalService;
492            }
493    
494            /**
495             * Returns the shopping item remote service.
496             *
497             * @return the shopping item remote service
498             */
499            public com.liferay.portlet.shopping.service.ShoppingItemService getShoppingItemService() {
500                    return shoppingItemService;
501            }
502    
503            /**
504             * Sets the shopping item remote service.
505             *
506             * @param shoppingItemService the shopping item remote service
507             */
508            public void setShoppingItemService(
509                    com.liferay.portlet.shopping.service.ShoppingItemService shoppingItemService) {
510                    this.shoppingItemService = shoppingItemService;
511            }
512    
513            /**
514             * Returns the shopping item persistence.
515             *
516             * @return the shopping item persistence
517             */
518            public ShoppingItemPersistence getShoppingItemPersistence() {
519                    return shoppingItemPersistence;
520            }
521    
522            /**
523             * Sets the shopping item persistence.
524             *
525             * @param shoppingItemPersistence the shopping item persistence
526             */
527            public void setShoppingItemPersistence(
528                    ShoppingItemPersistence shoppingItemPersistence) {
529                    this.shoppingItemPersistence = shoppingItemPersistence;
530            }
531    
532            /**
533             * Returns the shopping item finder.
534             *
535             * @return the shopping item finder
536             */
537            public ShoppingItemFinder getShoppingItemFinder() {
538                    return shoppingItemFinder;
539            }
540    
541            /**
542             * Sets the shopping item finder.
543             *
544             * @param shoppingItemFinder the shopping item finder
545             */
546            public void setShoppingItemFinder(ShoppingItemFinder shoppingItemFinder) {
547                    this.shoppingItemFinder = shoppingItemFinder;
548            }
549    
550            public void afterPropertiesSet() {
551                    persistedModelLocalServiceRegistry.register("com.liferay.portlet.shopping.model.ShoppingCategory",
552                            shoppingCategoryLocalService);
553            }
554    
555            public void destroy() {
556                    persistedModelLocalServiceRegistry.unregister(
557                            "com.liferay.portlet.shopping.model.ShoppingCategory");
558            }
559    
560            /**
561             * Returns the Spring bean ID for this bean.
562             *
563             * @return the Spring bean ID for this bean
564             */
565            @Override
566            public String getBeanIdentifier() {
567                    return _beanIdentifier;
568            }
569    
570            /**
571             * Sets the Spring bean ID for this bean.
572             *
573             * @param beanIdentifier the Spring bean ID for this bean
574             */
575            @Override
576            public void setBeanIdentifier(String beanIdentifier) {
577                    _beanIdentifier = beanIdentifier;
578            }
579    
580            protected Class<?> getModelClass() {
581                    return ShoppingCategory.class;
582            }
583    
584            protected String getModelClassName() {
585                    return ShoppingCategory.class.getName();
586            }
587    
588            /**
589             * Performs a SQL query.
590             *
591             * @param sql the sql query
592             */
593            protected void runSQL(String sql) {
594                    try {
595                            DataSource dataSource = shoppingCategoryPersistence.getDataSource();
596    
597                            DB db = DBFactoryUtil.getDB();
598    
599                            sql = db.buildSQL(sql);
600                            sql = PortalUtil.transformSQL(sql);
601    
602                            SqlUpdate sqlUpdate = SqlUpdateFactoryUtil.getSqlUpdate(dataSource,
603                                            sql, new int[0]);
604    
605                            sqlUpdate.update();
606                    }
607                    catch (Exception e) {
608                            throw new SystemException(e);
609                    }
610            }
611    
612            @BeanReference(type = com.liferay.portlet.shopping.service.ShoppingCategoryLocalService.class)
613            protected com.liferay.portlet.shopping.service.ShoppingCategoryLocalService shoppingCategoryLocalService;
614            @BeanReference(type = com.liferay.portlet.shopping.service.ShoppingCategoryService.class)
615            protected com.liferay.portlet.shopping.service.ShoppingCategoryService shoppingCategoryService;
616            @BeanReference(type = ShoppingCategoryPersistence.class)
617            protected ShoppingCategoryPersistence shoppingCategoryPersistence;
618            @BeanReference(type = com.liferay.counter.service.CounterLocalService.class)
619            protected com.liferay.counter.service.CounterLocalService counterLocalService;
620            @BeanReference(type = com.liferay.portal.service.ResourceLocalService.class)
621            protected com.liferay.portal.service.ResourceLocalService resourceLocalService;
622            @BeanReference(type = com.liferay.portal.service.UserLocalService.class)
623            protected com.liferay.portal.service.UserLocalService userLocalService;
624            @BeanReference(type = com.liferay.portal.service.UserService.class)
625            protected com.liferay.portal.service.UserService userService;
626            @BeanReference(type = UserPersistence.class)
627            protected UserPersistence userPersistence;
628            @BeanReference(type = UserFinder.class)
629            protected UserFinder userFinder;
630            @BeanReference(type = com.liferay.portlet.shopping.service.ShoppingItemLocalService.class)
631            protected com.liferay.portlet.shopping.service.ShoppingItemLocalService shoppingItemLocalService;
632            @BeanReference(type = com.liferay.portlet.shopping.service.ShoppingItemService.class)
633            protected com.liferay.portlet.shopping.service.ShoppingItemService shoppingItemService;
634            @BeanReference(type = ShoppingItemPersistence.class)
635            protected ShoppingItemPersistence shoppingItemPersistence;
636            @BeanReference(type = ShoppingItemFinder.class)
637            protected ShoppingItemFinder shoppingItemFinder;
638            @BeanReference(type = PersistedModelLocalServiceRegistry.class)
639            protected PersistedModelLocalServiceRegistry persistedModelLocalServiceRegistry;
640            private String _beanIdentifier;
641    }