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