
com.liferay.search.experiences.service.base.SXPElementLocalServiceBaseImpl Maven / Gradle / Ivy
/**
* Copyright (c) 2000-present Liferay, Inc. All rights reserved.
*
* The contents of this file are subject to the terms of the Liferay Enterprise
* Subscription License ("License"). You may not use this file except in
* compliance with the License. You can obtain a copy of the License by
* contacting Liferay, Inc. See the License for the specific language governing
* permissions and limitations under the License, including but not limited to
* distribution rights of the Software.
*
*
*
*/
package com.liferay.search.experiences.service.base;
import com.liferay.exportimport.kernel.lar.ExportImportHelperUtil;
import com.liferay.exportimport.kernel.lar.ManifestSummary;
import com.liferay.exportimport.kernel.lar.PortletDataContext;
import com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil;
import com.liferay.exportimport.kernel.lar.StagedModelType;
import com.liferay.petra.sql.dsl.query.DSLQuery;
import com.liferay.portal.aop.AopService;
import com.liferay.portal.kernel.dao.db.DB;
import com.liferay.portal.kernel.dao.db.DBManagerUtil;
import com.liferay.portal.kernel.dao.jdbc.SqlUpdate;
import com.liferay.portal.kernel.dao.jdbc.SqlUpdateFactoryUtil;
import com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery;
import com.liferay.portal.kernel.dao.orm.DefaultActionableDynamicQuery;
import com.liferay.portal.kernel.dao.orm.DynamicQuery;
import com.liferay.portal.kernel.dao.orm.DynamicQueryFactoryUtil;
import com.liferay.portal.kernel.dao.orm.ExportActionableDynamicQuery;
import com.liferay.portal.kernel.dao.orm.IndexableActionableDynamicQuery;
import com.liferay.portal.kernel.dao.orm.Projection;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.model.PersistedModel;
import com.liferay.portal.kernel.module.framework.service.IdentifiableOSGiService;
import com.liferay.portal.kernel.search.Indexable;
import com.liferay.portal.kernel.search.IndexableType;
import com.liferay.portal.kernel.service.BaseLocalServiceImpl;
import com.liferay.portal.kernel.service.PersistedModelLocalService;
import com.liferay.portal.kernel.service.persistence.BasePersistence;
import com.liferay.portal.kernel.transaction.Transactional;
import com.liferay.portal.kernel.util.OrderByComparator;
import com.liferay.portal.kernel.util.PortalUtil;
import com.liferay.search.experiences.model.SXPElement;
import com.liferay.search.experiences.service.SXPElementLocalService;
import com.liferay.search.experiences.service.SXPElementLocalServiceUtil;
import com.liferay.search.experiences.service.persistence.SXPElementPersistence;
import java.io.Serializable;
import java.lang.reflect.Field;
import java.util.List;
import javax.sql.DataSource;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
/**
* Provides the base implementation for the sxp element local service.
*
*
* 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.search.experiences.service.impl.SXPElementLocalServiceImpl}.
*
*
* @author Brian Wing Shun Chan
* @see com.liferay.search.experiences.service.impl.SXPElementLocalServiceImpl
* @generated
*/
public abstract class SXPElementLocalServiceBaseImpl
extends BaseLocalServiceImpl
implements AopService, IdentifiableOSGiService, SXPElementLocalService {
/*
* NOTE FOR DEVELOPERS:
*
* Never modify or reference this class directly. Use SXPElementLocalService
via injection or a org.osgi.util.tracker.ServiceTracker
or use SXPElementLocalServiceUtil
.
*/
/**
* Adds the sxp element to the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect SXPElementLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param sxpElement the sxp element
* @return the sxp element that was added
*/
@Indexable(type = IndexableType.REINDEX)
@Override
public SXPElement addSXPElement(SXPElement sxpElement) {
sxpElement.setNew(true);
return sxpElementPersistence.update(sxpElement);
}
/**
* Creates a new sxp element with the primary key. Does not add the sxp element to the database.
*
* @param sxpElementId the primary key for the new sxp element
* @return the new sxp element
*/
@Override
@Transactional(enabled = false)
public SXPElement createSXPElement(long sxpElementId) {
return sxpElementPersistence.create(sxpElementId);
}
/**
* Deletes the sxp element with the primary key from the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect SXPElementLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param sxpElementId the primary key of the sxp element
* @return the sxp element that was removed
* @throws PortalException if a sxp element with the primary key could not be found
*/
@Indexable(type = IndexableType.DELETE)
@Override
public SXPElement deleteSXPElement(long sxpElementId)
throws PortalException {
return sxpElementPersistence.remove(sxpElementId);
}
/**
* Deletes the sxp element from the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect SXPElementLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param sxpElement the sxp element
* @return the sxp element that was removed
* @throws PortalException
*/
@Indexable(type = IndexableType.DELETE)
@Override
public SXPElement deleteSXPElement(SXPElement sxpElement)
throws PortalException {
return sxpElementPersistence.remove(sxpElement);
}
@Override
public T dslQuery(DSLQuery dslQuery) {
return sxpElementPersistence.dslQuery(dslQuery);
}
@Override
public int dslQueryCount(DSLQuery dslQuery) {
Long count = dslQuery(dslQuery);
return count.intValue();
}
@Override
public DynamicQuery dynamicQuery() {
Class> clazz = getClass();
return DynamicQueryFactoryUtil.forClass(
SXPElement.class, clazz.getClassLoader());
}
/**
* Performs a dynamic query on the database and returns the matching rows.
*
* @param dynamicQuery the dynamic query
* @return the matching rows
*/
@Override
public List dynamicQuery(DynamicQuery dynamicQuery) {
return sxpElementPersistence.findWithDynamicQuery(dynamicQuery);
}
/**
* Performs a dynamic query on the database and returns a range of the matching rows.
*
*
* Useful when paginating results. Returns a maximum of end - start
instances. start
and end
are not primary keys, they are indexes in the result set. Thus, 0
refers to the first result in the set. Setting both start
and end
to com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. If orderByComparator
is specified, then the query will include the given ORDER BY logic. If orderByComparator
is absent, then the query will include the default ORDER BY logic from com.liferay.search.experiences.model.impl.SXPElementModelImpl
.
*
*
* @param dynamicQuery the dynamic query
* @param start the lower bound of the range of model instances
* @param end the upper bound of the range of model instances (not inclusive)
* @return the range of matching rows
*/
@Override
public List dynamicQuery(
DynamicQuery dynamicQuery, int start, int end) {
return sxpElementPersistence.findWithDynamicQuery(
dynamicQuery, start, end);
}
/**
* Performs a dynamic query on the database and returns an ordered range of the matching rows.
*
*
* Useful when paginating results. Returns a maximum of end - start
instances. start
and end
are not primary keys, they are indexes in the result set. Thus, 0
refers to the first result in the set. Setting both start
and end
to com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. If orderByComparator
is specified, then the query will include the given ORDER BY logic. If orderByComparator
is absent, then the query will include the default ORDER BY logic from com.liferay.search.experiences.model.impl.SXPElementModelImpl
.
*
*
* @param dynamicQuery the dynamic query
* @param start the lower bound of the range of model instances
* @param end the upper bound of the range of model instances (not inclusive)
* @param orderByComparator the comparator to order the results by (optionally null
)
* @return the ordered range of matching rows
*/
@Override
public List dynamicQuery(
DynamicQuery dynamicQuery, int start, int end,
OrderByComparator orderByComparator) {
return sxpElementPersistence.findWithDynamicQuery(
dynamicQuery, start, end, orderByComparator);
}
/**
* Returns the number of rows matching the dynamic query.
*
* @param dynamicQuery the dynamic query
* @return the number of rows matching the dynamic query
*/
@Override
public long dynamicQueryCount(DynamicQuery dynamicQuery) {
return sxpElementPersistence.countWithDynamicQuery(dynamicQuery);
}
/**
* Returns the number of rows matching the dynamic query.
*
* @param dynamicQuery the dynamic query
* @param projection the projection to apply to the query
* @return the number of rows matching the dynamic query
*/
@Override
public long dynamicQueryCount(
DynamicQuery dynamicQuery, Projection projection) {
return sxpElementPersistence.countWithDynamicQuery(
dynamicQuery, projection);
}
@Override
public SXPElement fetchSXPElement(long sxpElementId) {
return sxpElementPersistence.fetchByPrimaryKey(sxpElementId);
}
/**
* Returns the sxp element with the matching UUID and company.
*
* @param uuid the sxp element's UUID
* @param companyId the primary key of the company
* @return the matching sxp element, or null
if a matching sxp element could not be found
*/
@Override
public SXPElement fetchSXPElementByUuidAndCompanyId(
String uuid, long companyId) {
return sxpElementPersistence.fetchByUuid_C_First(uuid, companyId, null);
}
/**
* Returns the sxp element with the matching external reference code and company.
*
* @param companyId the primary key of the company
* @param externalReferenceCode the sxp element's external reference code
* @return the matching sxp element, or null
if a matching sxp element could not be found
*/
@Override
public SXPElement fetchSXPElementByExternalReferenceCode(
long companyId, String externalReferenceCode) {
return sxpElementPersistence.fetchByC_ERC(
companyId, externalReferenceCode);
}
/**
* @deprecated As of Cavanaugh (7.4.x), replaced by {@link #fetchSXPElementByExternalReferenceCode(long, String)}
*/
@Deprecated
@Override
public SXPElement fetchSXPElementByReferenceCode(
long companyId, String externalReferenceCode) {
return fetchSXPElementByExternalReferenceCode(
companyId, externalReferenceCode);
}
/**
* Returns the sxp element with the matching external reference code and company.
*
* @param companyId the primary key of the company
* @param externalReferenceCode the sxp element's external reference code
* @return the matching sxp element
* @throws PortalException if a matching sxp element could not be found
*/
@Override
public SXPElement getSXPElementByExternalReferenceCode(
long companyId, String externalReferenceCode)
throws PortalException {
return sxpElementPersistence.findByC_ERC(
companyId, externalReferenceCode);
}
/**
* Returns the sxp element with the primary key.
*
* @param sxpElementId the primary key of the sxp element
* @return the sxp element
* @throws PortalException if a sxp element with the primary key could not be found
*/
@Override
public SXPElement getSXPElement(long sxpElementId) throws PortalException {
return sxpElementPersistence.findByPrimaryKey(sxpElementId);
}
@Override
public ActionableDynamicQuery getActionableDynamicQuery() {
ActionableDynamicQuery actionableDynamicQuery =
new DefaultActionableDynamicQuery();
actionableDynamicQuery.setBaseLocalService(sxpElementLocalService);
actionableDynamicQuery.setClassLoader(getClassLoader());
actionableDynamicQuery.setModelClass(SXPElement.class);
actionableDynamicQuery.setPrimaryKeyPropertyName("sxpElementId");
return actionableDynamicQuery;
}
@Override
public IndexableActionableDynamicQuery
getIndexableActionableDynamicQuery() {
IndexableActionableDynamicQuery indexableActionableDynamicQuery =
new IndexableActionableDynamicQuery();
indexableActionableDynamicQuery.setBaseLocalService(
sxpElementLocalService);
indexableActionableDynamicQuery.setClassLoader(getClassLoader());
indexableActionableDynamicQuery.setModelClass(SXPElement.class);
indexableActionableDynamicQuery.setPrimaryKeyPropertyName(
"sxpElementId");
return indexableActionableDynamicQuery;
}
protected void initActionableDynamicQuery(
ActionableDynamicQuery actionableDynamicQuery) {
actionableDynamicQuery.setBaseLocalService(sxpElementLocalService);
actionableDynamicQuery.setClassLoader(getClassLoader());
actionableDynamicQuery.setModelClass(SXPElement.class);
actionableDynamicQuery.setPrimaryKeyPropertyName("sxpElementId");
}
@Override
public ExportActionableDynamicQuery getExportActionableDynamicQuery(
final PortletDataContext portletDataContext) {
final ExportActionableDynamicQuery exportActionableDynamicQuery =
new ExportActionableDynamicQuery() {
@Override
public long performCount() throws PortalException {
ManifestSummary manifestSummary =
portletDataContext.getManifestSummary();
StagedModelType stagedModelType = getStagedModelType();
long modelAdditionCount = super.performCount();
manifestSummary.addModelAdditionCount(
stagedModelType, modelAdditionCount);
long modelDeletionCount =
ExportImportHelperUtil.getModelDeletionCount(
portletDataContext, stagedModelType);
manifestSummary.addModelDeletionCount(
stagedModelType, modelDeletionCount);
return modelAdditionCount;
}
};
initActionableDynamicQuery(exportActionableDynamicQuery);
exportActionableDynamicQuery.setAddCriteriaMethod(
new ActionableDynamicQuery.AddCriteriaMethod() {
@Override
public void addCriteria(DynamicQuery dynamicQuery) {
portletDataContext.addDateRangeCriteria(
dynamicQuery, "modifiedDate");
}
});
exportActionableDynamicQuery.setCompanyId(
portletDataContext.getCompanyId());
exportActionableDynamicQuery.setPerformActionMethod(
new ActionableDynamicQuery.PerformActionMethod() {
@Override
public void performAction(SXPElement sxpElement)
throws PortalException {
StagedModelDataHandlerUtil.exportStagedModel(
portletDataContext, sxpElement);
}
});
exportActionableDynamicQuery.setStagedModelType(
new StagedModelType(
PortalUtil.getClassNameId(SXPElement.class.getName())));
return exportActionableDynamicQuery;
}
/**
* @throws PortalException
*/
@Override
public PersistedModel createPersistedModel(Serializable primaryKeyObj)
throws PortalException {
return sxpElementPersistence.create(((Long)primaryKeyObj).longValue());
}
/**
* @throws PortalException
*/
@Override
public PersistedModel deletePersistedModel(PersistedModel persistedModel)
throws PortalException {
return sxpElementLocalService.deleteSXPElement(
(SXPElement)persistedModel);
}
@Override
public BasePersistence getBasePersistence() {
return sxpElementPersistence;
}
/**
* @throws PortalException
*/
@Override
public PersistedModel getPersistedModel(Serializable primaryKeyObj)
throws PortalException {
return sxpElementPersistence.findByPrimaryKey(primaryKeyObj);
}
/**
* Returns the sxp element with the matching UUID and company.
*
* @param uuid the sxp element's UUID
* @param companyId the primary key of the company
* @return the matching sxp element
* @throws PortalException if a matching sxp element could not be found
*/
@Override
public SXPElement getSXPElementByUuidAndCompanyId(
String uuid, long companyId)
throws PortalException {
return sxpElementPersistence.findByUuid_C_First(uuid, companyId, null);
}
/**
* Returns a range of all the sxp elements.
*
*
* Useful when paginating results. Returns a maximum of end - start
instances. start
and end
are not primary keys, they are indexes in the result set. Thus, 0
refers to the first result in the set. Setting both start
and end
to com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. If orderByComparator
is specified, then the query will include the given ORDER BY logic. If orderByComparator
is absent, then the query will include the default ORDER BY logic from com.liferay.search.experiences.model.impl.SXPElementModelImpl
.
*
*
* @param start the lower bound of the range of sxp elements
* @param end the upper bound of the range of sxp elements (not inclusive)
* @return the range of sxp elements
*/
@Override
public List getSXPElements(int start, int end) {
return sxpElementPersistence.findAll(start, end);
}
/**
* Returns the number of sxp elements.
*
* @return the number of sxp elements
*/
@Override
public int getSXPElementsCount() {
return sxpElementPersistence.countAll();
}
/**
* Updates the sxp element in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
*
*
* Important: Inspect SXPElementLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param sxpElement the sxp element
* @return the sxp element that was updated
*/
@Indexable(type = IndexableType.REINDEX)
@Override
public SXPElement updateSXPElement(SXPElement sxpElement) {
return sxpElementPersistence.update(sxpElement);
}
@Deactivate
protected void deactivate() {
_setLocalServiceUtilService(null);
}
@Override
public Class>[] getAopInterfaces() {
return new Class>[] {
SXPElementLocalService.class, IdentifiableOSGiService.class,
PersistedModelLocalService.class
};
}
@Override
public void setAopProxy(Object aopProxy) {
sxpElementLocalService = (SXPElementLocalService)aopProxy;
_setLocalServiceUtilService(sxpElementLocalService);
}
/**
* Returns the OSGi service identifier.
*
* @return the OSGi service identifier
*/
@Override
public String getOSGiServiceIdentifier() {
return SXPElementLocalService.class.getName();
}
protected Class> getModelClass() {
return SXPElement.class;
}
protected String getModelClassName() {
return SXPElement.class.getName();
}
/**
* Performs a SQL query.
*
* @param sql the sql query
*/
protected void runSQL(String sql) {
try {
DataSource dataSource = sxpElementPersistence.getDataSource();
DB db = DBManagerUtil.getDB();
sql = db.buildSQL(sql);
sql = PortalUtil.transformSQL(sql);
SqlUpdate sqlUpdate = SqlUpdateFactoryUtil.getSqlUpdate(
dataSource, sql);
sqlUpdate.update();
}
catch (Exception exception) {
throw new SystemException(exception);
}
}
private void _setLocalServiceUtilService(
SXPElementLocalService sxpElementLocalService) {
try {
Field field = SXPElementLocalServiceUtil.class.getDeclaredField(
"_service");
field.setAccessible(true);
field.set(null, sxpElementLocalService);
}
catch (ReflectiveOperationException reflectiveOperationException) {
throw new RuntimeException(reflectiveOperationException);
}
}
protected SXPElementLocalService sxpElementLocalService;
@Reference
protected SXPElementPersistence sxpElementPersistence;
@Reference
protected com.liferay.counter.kernel.service.CounterLocalService
counterLocalService;
}