
com.liferay.object.service.base.ObjectRelationshipLocalServiceBaseImpl Maven / Gradle / Ivy
/**
* SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
* SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
*/
package com.liferay.object.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.object.model.ObjectRelationship;
import com.liferay.object.service.ObjectRelationshipLocalService;
import com.liferay.object.service.persistence.ObjectRelationshipPersistence;
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.CurrentConnectionUtil;
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.log.Log;
import com.liferay.portal.kernel.log.LogFactoryUtil;
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 java.io.Serializable;
import java.sql.Connection;
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 object relationship 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.object.service.impl.ObjectRelationshipLocalServiceImpl}.
*
*
* @author Marco Leo
* @see com.liferay.object.service.impl.ObjectRelationshipLocalServiceImpl
* @generated
*/
public abstract class ObjectRelationshipLocalServiceBaseImpl
extends BaseLocalServiceImpl
implements AopService, IdentifiableOSGiService,
ObjectRelationshipLocalService {
/*
* NOTE FOR DEVELOPERS:
*
* Never modify or reference this class directly. Use ObjectRelationshipLocalService
via injection or a org.osgi.util.tracker.ServiceTracker
or use com.liferay.object.service.ObjectRelationshipLocalServiceUtil
.
*/
/**
* Adds the object relationship to the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect ObjectRelationshipLocalServiceImpl 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 objectRelationship the object relationship
* @return the object relationship that was added
*/
@Indexable(type = IndexableType.REINDEX)
@Override
public ObjectRelationship addObjectRelationship(
ObjectRelationship objectRelationship) {
objectRelationship.setNew(true);
return objectRelationshipPersistence.update(objectRelationship);
}
/**
* Creates a new object relationship with the primary key. Does not add the object relationship to the database.
*
* @param objectRelationshipId the primary key for the new object relationship
* @return the new object relationship
*/
@Override
@Transactional(enabled = false)
public ObjectRelationship createObjectRelationship(
long objectRelationshipId) {
return objectRelationshipPersistence.create(objectRelationshipId);
}
/**
* Deletes the object relationship with the primary key from the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect ObjectRelationshipLocalServiceImpl 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 objectRelationshipId the primary key of the object relationship
* @return the object relationship that was removed
* @throws PortalException if a object relationship with the primary key could not be found
*/
@Indexable(type = IndexableType.DELETE)
@Override
public ObjectRelationship deleteObjectRelationship(
long objectRelationshipId)
throws PortalException {
return objectRelationshipPersistence.remove(objectRelationshipId);
}
/**
* Deletes the object relationship from the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect ObjectRelationshipLocalServiceImpl 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 objectRelationship the object relationship
* @return the object relationship that was removed
* @throws PortalException
*/
@Indexable(type = IndexableType.DELETE)
@Override
public ObjectRelationship deleteObjectRelationship(
ObjectRelationship objectRelationship)
throws PortalException {
return objectRelationshipPersistence.remove(objectRelationship);
}
@Override
public T dslQuery(DSLQuery dslQuery) {
return objectRelationshipPersistence.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(
ObjectRelationship.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 objectRelationshipPersistence.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.object.model.impl.ObjectRelationshipModelImpl
.
*
*
* @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 objectRelationshipPersistence.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.object.model.impl.ObjectRelationshipModelImpl
.
*
*
* @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 objectRelationshipPersistence.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 objectRelationshipPersistence.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 objectRelationshipPersistence.countWithDynamicQuery(
dynamicQuery, projection);
}
@Override
public ObjectRelationship fetchObjectRelationship(
long objectRelationshipId) {
return objectRelationshipPersistence.fetchByPrimaryKey(
objectRelationshipId);
}
/**
* Returns the object relationship with the matching UUID and company.
*
* @param uuid the object relationship's UUID
* @param companyId the primary key of the company
* @return the matching object relationship, or null
if a matching object relationship could not be found
*/
@Override
public ObjectRelationship fetchObjectRelationshipByUuidAndCompanyId(
String uuid, long companyId) {
return objectRelationshipPersistence.fetchByUuid_C_First(
uuid, companyId, null);
}
/**
* Returns the object relationship with the primary key.
*
* @param objectRelationshipId the primary key of the object relationship
* @return the object relationship
* @throws PortalException if a object relationship with the primary key could not be found
*/
@Override
public ObjectRelationship getObjectRelationship(long objectRelationshipId)
throws PortalException {
return objectRelationshipPersistence.findByPrimaryKey(
objectRelationshipId);
}
@Override
public ActionableDynamicQuery getActionableDynamicQuery() {
ActionableDynamicQuery actionableDynamicQuery =
new DefaultActionableDynamicQuery();
actionableDynamicQuery.setBaseLocalService(
objectRelationshipLocalService);
actionableDynamicQuery.setClassLoader(getClassLoader());
actionableDynamicQuery.setModelClass(ObjectRelationship.class);
actionableDynamicQuery.setPrimaryKeyPropertyName(
"objectRelationshipId");
return actionableDynamicQuery;
}
@Override
public IndexableActionableDynamicQuery
getIndexableActionableDynamicQuery() {
IndexableActionableDynamicQuery indexableActionableDynamicQuery =
new IndexableActionableDynamicQuery();
indexableActionableDynamicQuery.setBaseLocalService(
objectRelationshipLocalService);
indexableActionableDynamicQuery.setClassLoader(getClassLoader());
indexableActionableDynamicQuery.setModelClass(ObjectRelationship.class);
indexableActionableDynamicQuery.setPrimaryKeyPropertyName(
"objectRelationshipId");
return indexableActionableDynamicQuery;
}
protected void initActionableDynamicQuery(
ActionableDynamicQuery actionableDynamicQuery) {
actionableDynamicQuery.setBaseLocalService(
objectRelationshipLocalService);
actionableDynamicQuery.setClassLoader(getClassLoader());
actionableDynamicQuery.setModelClass(ObjectRelationship.class);
actionableDynamicQuery.setPrimaryKeyPropertyName(
"objectRelationshipId");
}
@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(ObjectRelationship objectRelationship)
throws PortalException {
StagedModelDataHandlerUtil.exportStagedModel(
portletDataContext, objectRelationship);
}
});
exportActionableDynamicQuery.setStagedModelType(
new StagedModelType(
PortalUtil.getClassNameId(ObjectRelationship.class.getName())));
return exportActionableDynamicQuery;
}
/**
* @throws PortalException
*/
@Override
public PersistedModel createPersistedModel(Serializable primaryKeyObj)
throws PortalException {
return objectRelationshipPersistence.create(
((Long)primaryKeyObj).longValue());
}
/**
* @throws PortalException
*/
@Override
public PersistedModel deletePersistedModel(PersistedModel persistedModel)
throws PortalException {
if (_log.isWarnEnabled()) {
_log.warn(
"Implement ObjectRelationshipLocalServiceImpl#deleteObjectRelationship(ObjectRelationship) to avoid orphaned data");
}
return objectRelationshipLocalService.deleteObjectRelationship(
(ObjectRelationship)persistedModel);
}
@Override
public BasePersistence getBasePersistence() {
return objectRelationshipPersistence;
}
/**
* @throws PortalException
*/
@Override
public PersistedModel getPersistedModel(Serializable primaryKeyObj)
throws PortalException {
return objectRelationshipPersistence.findByPrimaryKey(primaryKeyObj);
}
/**
* Returns the object relationship with the matching UUID and company.
*
* @param uuid the object relationship's UUID
* @param companyId the primary key of the company
* @return the matching object relationship
* @throws PortalException if a matching object relationship could not be found
*/
@Override
public ObjectRelationship getObjectRelationshipByUuidAndCompanyId(
String uuid, long companyId)
throws PortalException {
return objectRelationshipPersistence.findByUuid_C_First(
uuid, companyId, null);
}
/**
* Returns a range of all the object relationships.
*
*
* 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.object.model.impl.ObjectRelationshipModelImpl
.
*
*
* @param start the lower bound of the range of object relationships
* @param end the upper bound of the range of object relationships (not inclusive)
* @return the range of object relationships
*/
@Override
public List getObjectRelationships(int start, int end) {
return objectRelationshipPersistence.findAll(start, end);
}
/**
* Returns the number of object relationships.
*
* @return the number of object relationships
*/
@Override
public int getObjectRelationshipsCount() {
return objectRelationshipPersistence.countAll();
}
/**
* Updates the object relationship in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
*
*
* Important: Inspect ObjectRelationshipLocalServiceImpl 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 objectRelationship the object relationship
* @return the object relationship that was updated
*/
@Indexable(type = IndexableType.REINDEX)
@Override
public ObjectRelationship updateObjectRelationship(
ObjectRelationship objectRelationship) {
return objectRelationshipPersistence.update(objectRelationship);
}
@Deactivate
protected void deactivate() {
}
@Override
public Class>[] getAopInterfaces() {
return new Class>[] {
ObjectRelationshipLocalService.class, IdentifiableOSGiService.class,
PersistedModelLocalService.class
};
}
@Override
public void setAopProxy(Object aopProxy) {
objectRelationshipLocalService =
(ObjectRelationshipLocalService)aopProxy;
}
/**
* Returns the OSGi service identifier.
*
* @return the OSGi service identifier
*/
@Override
public String getOSGiServiceIdentifier() {
return ObjectRelationshipLocalService.class.getName();
}
protected Class> getModelClass() {
return ObjectRelationship.class;
}
protected String getModelClassName() {
return ObjectRelationship.class.getName();
}
/**
* Performs a SQL query.
*
* @param sql the sql query
*/
protected void runSQL(String sql) {
DataSource dataSource = objectRelationshipPersistence.getDataSource();
DB db = DBManagerUtil.getDB();
Connection currentConnection = CurrentConnectionUtil.getConnection(
dataSource);
try {
if (currentConnection != null) {
db.runSQL(currentConnection, new String[] {sql});
return;
}
try (Connection connection = dataSource.getConnection()) {
db.runSQL(connection, new String[] {sql});
}
}
catch (Exception exception) {
throw new SystemException(exception);
}
}
protected ObjectRelationshipLocalService objectRelationshipLocalService;
@Reference
protected ObjectRelationshipPersistence objectRelationshipPersistence;
@Reference
protected com.liferay.counter.kernel.service.CounterLocalService
counterLocalService;
private static final Log _log = LogFactoryUtil.getLog(
ObjectRelationshipLocalServiceBaseImpl.class);
}