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.expando.service.base;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.bean.BeanReference;
020    import com.liferay.portal.kernel.dao.db.DB;
021    import com.liferay.portal.kernel.dao.db.DBManagerUtil;
022    import com.liferay.portal.kernel.dao.jdbc.SqlUpdate;
023    import com.liferay.portal.kernel.dao.jdbc.SqlUpdateFactoryUtil;
024    import com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery;
025    import com.liferay.portal.kernel.dao.orm.DefaultActionableDynamicQuery;
026    import com.liferay.portal.kernel.dao.orm.DynamicQuery;
027    import com.liferay.portal.kernel.dao.orm.DynamicQueryFactoryUtil;
028    import com.liferay.portal.kernel.dao.orm.IndexableActionableDynamicQuery;
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.module.framework.service.IdentifiableOSGiService;
033    import com.liferay.portal.kernel.search.Indexable;
034    import com.liferay.portal.kernel.search.IndexableType;
035    import com.liferay.portal.kernel.util.OrderByComparator;
036    import com.liferay.portal.model.PersistedModel;
037    import com.liferay.portal.service.BaseLocalServiceImpl;
038    import com.liferay.portal.service.PersistedModelLocalServiceRegistry;
039    import com.liferay.portal.service.persistence.ClassNamePersistence;
040    import com.liferay.portal.service.persistence.UserFinder;
041    import com.liferay.portal.service.persistence.UserPersistence;
042    import com.liferay.portal.util.PortalUtil;
043    
044    import com.liferay.portlet.expando.model.ExpandoRow;
045    import com.liferay.portlet.expando.service.ExpandoRowLocalService;
046    import com.liferay.portlet.expando.service.persistence.ExpandoColumnPersistence;
047    import com.liferay.portlet.expando.service.persistence.ExpandoRowPersistence;
048    import com.liferay.portlet.expando.service.persistence.ExpandoTablePersistence;
049    import com.liferay.portlet.expando.service.persistence.ExpandoValuePersistence;
050    
051    import java.io.Serializable;
052    
053    import java.util.List;
054    
055    import javax.sql.DataSource;
056    
057    /**
058     * Provides the base implementation for the expando row local service.
059     *
060     * <p>
061     * 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.expando.service.impl.ExpandoRowLocalServiceImpl}.
062     * </p>
063     *
064     * @author Brian Wing Shun Chan
065     * @see com.liferay.portlet.expando.service.impl.ExpandoRowLocalServiceImpl
066     * @see com.liferay.portlet.expando.service.ExpandoRowLocalServiceUtil
067     * @generated
068     */
069    @ProviderType
070    public abstract class ExpandoRowLocalServiceBaseImpl
071            extends BaseLocalServiceImpl implements ExpandoRowLocalService,
072                    IdentifiableOSGiService {
073            /*
074             * NOTE FOR DEVELOPERS:
075             *
076             * Never modify or reference this class directly. Always use {@link com.liferay.portlet.expando.service.ExpandoRowLocalServiceUtil} to access the expando row local service.
077             */
078    
079            /**
080             * Adds the expando row to the database. Also notifies the appropriate model listeners.
081             *
082             * @param expandoRow the expando row
083             * @return the expando row that was added
084             */
085            @Indexable(type = IndexableType.REINDEX)
086            @Override
087            public ExpandoRow addExpandoRow(ExpandoRow expandoRow) {
088                    expandoRow.setNew(true);
089    
090                    return expandoRowPersistence.update(expandoRow);
091            }
092    
093            /**
094             * Creates a new expando row with the primary key. Does not add the expando row to the database.
095             *
096             * @param rowId the primary key for the new expando row
097             * @return the new expando row
098             */
099            @Override
100            public ExpandoRow createExpandoRow(long rowId) {
101                    return expandoRowPersistence.create(rowId);
102            }
103    
104            /**
105             * Deletes the expando row with the primary key from the database. Also notifies the appropriate model listeners.
106             *
107             * @param rowId the primary key of the expando row
108             * @return the expando row that was removed
109             * @throws PortalException if a expando row with the primary key could not be found
110             */
111            @Indexable(type = IndexableType.DELETE)
112            @Override
113            public ExpandoRow deleteExpandoRow(long rowId) throws PortalException {
114                    return expandoRowPersistence.remove(rowId);
115            }
116    
117            /**
118             * Deletes the expando row from the database. Also notifies the appropriate model listeners.
119             *
120             * @param expandoRow the expando row
121             * @return the expando row that was removed
122             */
123            @Indexable(type = IndexableType.DELETE)
124            @Override
125            public ExpandoRow deleteExpandoRow(ExpandoRow expandoRow) {
126                    return expandoRowPersistence.remove(expandoRow);
127            }
128    
129            @Override
130            public DynamicQuery dynamicQuery() {
131                    Class<?> clazz = getClass();
132    
133                    return DynamicQueryFactoryUtil.forClass(ExpandoRow.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 expandoRowPersistence.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.expando.model.impl.ExpandoRowModelImpl}. 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 expandoRowPersistence.findWithDynamicQuery(dynamicQuery, start,
164                            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.expando.model.impl.ExpandoRowModelImpl}. 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 expandoRowPersistence.findWithDynamicQuery(dynamicQuery, start,
184                            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 expandoRowPersistence.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 expandoRowPersistence.countWithDynamicQuery(dynamicQuery,
209                            projection);
210            }
211    
212            @Override
213            public ExpandoRow fetchExpandoRow(long rowId) {
214                    return expandoRowPersistence.fetchByPrimaryKey(rowId);
215            }
216    
217            /**
218             * Returns the expando row with the primary key.
219             *
220             * @param rowId the primary key of the expando row
221             * @return the expando row
222             * @throws PortalException if a expando row with the primary key could not be found
223             */
224            @Override
225            public ExpandoRow getExpandoRow(long rowId) throws PortalException {
226                    return expandoRowPersistence.findByPrimaryKey(rowId);
227            }
228    
229            @Override
230            public ActionableDynamicQuery getActionableDynamicQuery() {
231                    ActionableDynamicQuery actionableDynamicQuery = new DefaultActionableDynamicQuery();
232    
233                    actionableDynamicQuery.setBaseLocalService(com.liferay.portlet.expando.service.ExpandoRowLocalServiceUtil.getService());
234                    actionableDynamicQuery.setClassLoader(getClassLoader());
235                    actionableDynamicQuery.setModelClass(ExpandoRow.class);
236    
237                    actionableDynamicQuery.setPrimaryKeyPropertyName("rowId");
238    
239                    return actionableDynamicQuery;
240            }
241    
242            @Override
243            public IndexableActionableDynamicQuery getIndexableActionableDynamicQuery() {
244                    IndexableActionableDynamicQuery indexableActionableDynamicQuery = new IndexableActionableDynamicQuery();
245    
246                    indexableActionableDynamicQuery.setBaseLocalService(com.liferay.portlet.expando.service.ExpandoRowLocalServiceUtil.getService());
247                    indexableActionableDynamicQuery.setClassLoader(getClassLoader());
248                    indexableActionableDynamicQuery.setModelClass(ExpandoRow.class);
249    
250                    indexableActionableDynamicQuery.setPrimaryKeyPropertyName("rowId");
251    
252                    return indexableActionableDynamicQuery;
253            }
254    
255            protected void initActionableDynamicQuery(
256                    ActionableDynamicQuery actionableDynamicQuery) {
257                    actionableDynamicQuery.setBaseLocalService(com.liferay.portlet.expando.service.ExpandoRowLocalServiceUtil.getService());
258                    actionableDynamicQuery.setClassLoader(getClassLoader());
259                    actionableDynamicQuery.setModelClass(ExpandoRow.class);
260    
261                    actionableDynamicQuery.setPrimaryKeyPropertyName("rowId");
262            }
263    
264            /**
265             * @throws PortalException
266             */
267            @Override
268            public PersistedModel deletePersistedModel(PersistedModel persistedModel)
269                    throws PortalException {
270                    return expandoRowLocalService.deleteExpandoRow((ExpandoRow)persistedModel);
271            }
272    
273            @Override
274            public PersistedModel getPersistedModel(Serializable primaryKeyObj)
275                    throws PortalException {
276                    return expandoRowPersistence.findByPrimaryKey(primaryKeyObj);
277            }
278    
279            /**
280             * Returns a range of all the expando rows.
281             *
282             * <p>
283             * 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.expando.model.impl.ExpandoRowModelImpl}. 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.
284             * </p>
285             *
286             * @param start the lower bound of the range of expando rows
287             * @param end the upper bound of the range of expando rows (not inclusive)
288             * @return the range of expando rows
289             */
290            @Override
291            public List<ExpandoRow> getExpandoRows(int start, int end) {
292                    return expandoRowPersistence.findAll(start, end);
293            }
294    
295            /**
296             * Returns the number of expando rows.
297             *
298             * @return the number of expando rows
299             */
300            @Override
301            public int getExpandoRowsCount() {
302                    return expandoRowPersistence.countAll();
303            }
304    
305            /**
306             * Updates the expando row in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
307             *
308             * @param expandoRow the expando row
309             * @return the expando row that was updated
310             */
311            @Indexable(type = IndexableType.REINDEX)
312            @Override
313            public ExpandoRow updateExpandoRow(ExpandoRow expandoRow) {
314                    return expandoRowPersistence.update(expandoRow);
315            }
316    
317            /**
318             * Returns the expando column local service.
319             *
320             * @return the expando column local service
321             */
322            public com.liferay.portlet.expando.service.ExpandoColumnLocalService getExpandoColumnLocalService() {
323                    return expandoColumnLocalService;
324            }
325    
326            /**
327             * Sets the expando column local service.
328             *
329             * @param expandoColumnLocalService the expando column local service
330             */
331            public void setExpandoColumnLocalService(
332                    com.liferay.portlet.expando.service.ExpandoColumnLocalService expandoColumnLocalService) {
333                    this.expandoColumnLocalService = expandoColumnLocalService;
334            }
335    
336            /**
337             * Returns the expando column persistence.
338             *
339             * @return the expando column persistence
340             */
341            public ExpandoColumnPersistence getExpandoColumnPersistence() {
342                    return expandoColumnPersistence;
343            }
344    
345            /**
346             * Sets the expando column persistence.
347             *
348             * @param expandoColumnPersistence the expando column persistence
349             */
350            public void setExpandoColumnPersistence(
351                    ExpandoColumnPersistence expandoColumnPersistence) {
352                    this.expandoColumnPersistence = expandoColumnPersistence;
353            }
354    
355            /**
356             * Returns the expando row local service.
357             *
358             * @return the expando row local service
359             */
360            public ExpandoRowLocalService getExpandoRowLocalService() {
361                    return expandoRowLocalService;
362            }
363    
364            /**
365             * Sets the expando row local service.
366             *
367             * @param expandoRowLocalService the expando row local service
368             */
369            public void setExpandoRowLocalService(
370                    ExpandoRowLocalService expandoRowLocalService) {
371                    this.expandoRowLocalService = expandoRowLocalService;
372            }
373    
374            /**
375             * Returns the expando row persistence.
376             *
377             * @return the expando row persistence
378             */
379            public ExpandoRowPersistence getExpandoRowPersistence() {
380                    return expandoRowPersistence;
381            }
382    
383            /**
384             * Sets the expando row persistence.
385             *
386             * @param expandoRowPersistence the expando row persistence
387             */
388            public void setExpandoRowPersistence(
389                    ExpandoRowPersistence expandoRowPersistence) {
390                    this.expandoRowPersistence = expandoRowPersistence;
391            }
392    
393            /**
394             * Returns the expando table local service.
395             *
396             * @return the expando table local service
397             */
398            public com.liferay.portlet.expando.service.ExpandoTableLocalService getExpandoTableLocalService() {
399                    return expandoTableLocalService;
400            }
401    
402            /**
403             * Sets the expando table local service.
404             *
405             * @param expandoTableLocalService the expando table local service
406             */
407            public void setExpandoTableLocalService(
408                    com.liferay.portlet.expando.service.ExpandoTableLocalService expandoTableLocalService) {
409                    this.expandoTableLocalService = expandoTableLocalService;
410            }
411    
412            /**
413             * Returns the expando table persistence.
414             *
415             * @return the expando table persistence
416             */
417            public ExpandoTablePersistence getExpandoTablePersistence() {
418                    return expandoTablePersistence;
419            }
420    
421            /**
422             * Sets the expando table persistence.
423             *
424             * @param expandoTablePersistence the expando table persistence
425             */
426            public void setExpandoTablePersistence(
427                    ExpandoTablePersistence expandoTablePersistence) {
428                    this.expandoTablePersistence = expandoTablePersistence;
429            }
430    
431            /**
432             * Returns the expando value local service.
433             *
434             * @return the expando value local service
435             */
436            public com.liferay.portlet.expando.service.ExpandoValueLocalService getExpandoValueLocalService() {
437                    return expandoValueLocalService;
438            }
439    
440            /**
441             * Sets the expando value local service.
442             *
443             * @param expandoValueLocalService the expando value local service
444             */
445            public void setExpandoValueLocalService(
446                    com.liferay.portlet.expando.service.ExpandoValueLocalService expandoValueLocalService) {
447                    this.expandoValueLocalService = expandoValueLocalService;
448            }
449    
450            /**
451             * Returns the expando value persistence.
452             *
453             * @return the expando value persistence
454             */
455            public ExpandoValuePersistence getExpandoValuePersistence() {
456                    return expandoValuePersistence;
457            }
458    
459            /**
460             * Sets the expando value persistence.
461             *
462             * @param expandoValuePersistence the expando value persistence
463             */
464            public void setExpandoValuePersistence(
465                    ExpandoValuePersistence expandoValuePersistence) {
466                    this.expandoValuePersistence = expandoValuePersistence;
467            }
468    
469            /**
470             * Returns the counter local service.
471             *
472             * @return the counter local service
473             */
474            public com.liferay.counter.service.CounterLocalService getCounterLocalService() {
475                    return counterLocalService;
476            }
477    
478            /**
479             * Sets the counter local service.
480             *
481             * @param counterLocalService the counter local service
482             */
483            public void setCounterLocalService(
484                    com.liferay.counter.service.CounterLocalService counterLocalService) {
485                    this.counterLocalService = counterLocalService;
486            }
487    
488            /**
489             * Returns the class name local service.
490             *
491             * @return the class name local service
492             */
493            public com.liferay.portal.service.ClassNameLocalService getClassNameLocalService() {
494                    return classNameLocalService;
495            }
496    
497            /**
498             * Sets the class name local service.
499             *
500             * @param classNameLocalService the class name local service
501             */
502            public void setClassNameLocalService(
503                    com.liferay.portal.service.ClassNameLocalService classNameLocalService) {
504                    this.classNameLocalService = classNameLocalService;
505            }
506    
507            /**
508             * Returns the class name persistence.
509             *
510             * @return the class name persistence
511             */
512            public ClassNamePersistence getClassNamePersistence() {
513                    return classNamePersistence;
514            }
515    
516            /**
517             * Sets the class name persistence.
518             *
519             * @param classNamePersistence the class name persistence
520             */
521            public void setClassNamePersistence(
522                    ClassNamePersistence classNamePersistence) {
523                    this.classNamePersistence = classNamePersistence;
524            }
525    
526            /**
527             * Returns the resource local service.
528             *
529             * @return the resource local service
530             */
531            public com.liferay.portal.service.ResourceLocalService getResourceLocalService() {
532                    return resourceLocalService;
533            }
534    
535            /**
536             * Sets the resource local service.
537             *
538             * @param resourceLocalService the resource local service
539             */
540            public void setResourceLocalService(
541                    com.liferay.portal.service.ResourceLocalService resourceLocalService) {
542                    this.resourceLocalService = resourceLocalService;
543            }
544    
545            /**
546             * Returns the user local service.
547             *
548             * @return the user local service
549             */
550            public com.liferay.portal.service.UserLocalService getUserLocalService() {
551                    return userLocalService;
552            }
553    
554            /**
555             * Sets the user local service.
556             *
557             * @param userLocalService the user local service
558             */
559            public void setUserLocalService(
560                    com.liferay.portal.service.UserLocalService userLocalService) {
561                    this.userLocalService = userLocalService;
562            }
563    
564            /**
565             * Returns the user persistence.
566             *
567             * @return the user persistence
568             */
569            public UserPersistence getUserPersistence() {
570                    return userPersistence;
571            }
572    
573            /**
574             * Sets the user persistence.
575             *
576             * @param userPersistence the user persistence
577             */
578            public void setUserPersistence(UserPersistence userPersistence) {
579                    this.userPersistence = userPersistence;
580            }
581    
582            /**
583             * Returns the user finder.
584             *
585             * @return the user finder
586             */
587            public UserFinder getUserFinder() {
588                    return userFinder;
589            }
590    
591            /**
592             * Sets the user finder.
593             *
594             * @param userFinder the user finder
595             */
596            public void setUserFinder(UserFinder userFinder) {
597                    this.userFinder = userFinder;
598            }
599    
600            public void afterPropertiesSet() {
601                    persistedModelLocalServiceRegistry.register("com.liferay.portlet.expando.model.ExpandoRow",
602                            expandoRowLocalService);
603            }
604    
605            public void destroy() {
606                    persistedModelLocalServiceRegistry.unregister(
607                            "com.liferay.portlet.expando.model.ExpandoRow");
608            }
609    
610            /**
611             * Returns the OSGi service identifier.
612             *
613             * @return the OSGi service identifier
614             */
615            @Override
616            public String getOSGiServiceIdentifier() {
617                    return ExpandoRowLocalService.class.getName();
618            }
619    
620            protected Class<?> getModelClass() {
621                    return ExpandoRow.class;
622            }
623    
624            protected String getModelClassName() {
625                    return ExpandoRow.class.getName();
626            }
627    
628            /**
629             * Performs a SQL query.
630             *
631             * @param sql the sql query
632             */
633            protected void runSQL(String sql) {
634                    try {
635                            DataSource dataSource = expandoRowPersistence.getDataSource();
636    
637                            DB db = DBManagerUtil.getDB();
638    
639                            sql = db.buildSQL(sql);
640                            sql = PortalUtil.transformSQL(sql);
641    
642                            SqlUpdate sqlUpdate = SqlUpdateFactoryUtil.getSqlUpdate(dataSource,
643                                            sql, new int[0]);
644    
645                            sqlUpdate.update();
646                    }
647                    catch (Exception e) {
648                            throw new SystemException(e);
649                    }
650            }
651    
652            @BeanReference(type = com.liferay.portlet.expando.service.ExpandoColumnLocalService.class)
653            protected com.liferay.portlet.expando.service.ExpandoColumnLocalService expandoColumnLocalService;
654            @BeanReference(type = ExpandoColumnPersistence.class)
655            protected ExpandoColumnPersistence expandoColumnPersistence;
656            @BeanReference(type = com.liferay.portlet.expando.service.ExpandoRowLocalService.class)
657            protected ExpandoRowLocalService expandoRowLocalService;
658            @BeanReference(type = ExpandoRowPersistence.class)
659            protected ExpandoRowPersistence expandoRowPersistence;
660            @BeanReference(type = com.liferay.portlet.expando.service.ExpandoTableLocalService.class)
661            protected com.liferay.portlet.expando.service.ExpandoTableLocalService expandoTableLocalService;
662            @BeanReference(type = ExpandoTablePersistence.class)
663            protected ExpandoTablePersistence expandoTablePersistence;
664            @BeanReference(type = com.liferay.portlet.expando.service.ExpandoValueLocalService.class)
665            protected com.liferay.portlet.expando.service.ExpandoValueLocalService expandoValueLocalService;
666            @BeanReference(type = ExpandoValuePersistence.class)
667            protected ExpandoValuePersistence expandoValuePersistence;
668            @BeanReference(type = com.liferay.counter.service.CounterLocalService.class)
669            protected com.liferay.counter.service.CounterLocalService counterLocalService;
670            @BeanReference(type = com.liferay.portal.service.ClassNameLocalService.class)
671            protected com.liferay.portal.service.ClassNameLocalService classNameLocalService;
672            @BeanReference(type = ClassNamePersistence.class)
673            protected ClassNamePersistence classNamePersistence;
674            @BeanReference(type = com.liferay.portal.service.ResourceLocalService.class)
675            protected com.liferay.portal.service.ResourceLocalService resourceLocalService;
676            @BeanReference(type = com.liferay.portal.service.UserLocalService.class)
677            protected com.liferay.portal.service.UserLocalService userLocalService;
678            @BeanReference(type = UserPersistence.class)
679            protected UserPersistence userPersistence;
680            @BeanReference(type = UserFinder.class)
681            protected UserFinder userFinder;
682            @BeanReference(type = PersistedModelLocalServiceRegistry.class)
683            protected PersistedModelLocalServiceRegistry persistedModelLocalServiceRegistry;
684    }