001
014
015 package com.liferay.portal.service.persistence;
016
017 import com.liferay.portal.kernel.dao.orm.DynamicQuery;
018 import com.liferay.portal.kernel.dao.orm.Property;
019 import com.liferay.portal.kernel.dao.orm.PropertyFactoryUtil;
020 import com.liferay.portal.kernel.exception.PortalException;
021 import com.liferay.portal.kernel.exception.SystemException;
022 import com.liferay.portal.kernel.lar.ExportImportHelperUtil;
023 import com.liferay.portal.kernel.lar.ManifestSummary;
024 import com.liferay.portal.kernel.lar.PortletDataContext;
025 import com.liferay.portal.kernel.lar.StagedModelDataHandlerUtil;
026 import com.liferay.portal.kernel.lar.StagedModelType;
027 import com.liferay.portal.model.EmailAddress;
028 import com.liferay.portal.util.PortalUtil;
029
030
034 public class EmailAddressExportActionableDynamicQuery
035 extends EmailAddressActionableDynamicQuery {
036 public EmailAddressExportActionableDynamicQuery(
037 PortletDataContext portletDataContext) throws SystemException {
038 _portletDataContext = portletDataContext;
039
040 setCompanyId(_portletDataContext.getCompanyId());
041 }
042
043 @Override
044 public long performCount() throws PortalException, SystemException {
045 ManifestSummary manifestSummary = _portletDataContext.getManifestSummary();
046
047 StagedModelType stagedModelType = getStagedModelType();
048
049 long modelAdditionCount = super.performCount();
050
051 manifestSummary.addModelAdditionCount(stagedModelType.toString(),
052 modelAdditionCount);
053
054 long modelDeletionCount = ExportImportHelperUtil.getModelDeletionCount(_portletDataContext,
055 stagedModelType);
056
057 manifestSummary.addModelDeletionCount(stagedModelType.toString(),
058 modelDeletionCount);
059
060 return modelAdditionCount;
061 }
062
063 @Override
064 protected void addCriteria(DynamicQuery dynamicQuery) {
065 _portletDataContext.addDateRangeCriteria(dynamicQuery, "modifiedDate");
066
067 if (getStagedModelType().getReferrerClassNameId() >= 0) {
068 Property classNameIdProperty = PropertyFactoryUtil.forName(
069 "classNameId");
070
071 dynamicQuery.add(classNameIdProperty.eq(getStagedModelType()
072 .getReferrerClassNameId()));
073 }
074 }
075
076 protected StagedModelType getStagedModelType() {
077 return new StagedModelType(PortalUtil.getClassNameId(
078 EmailAddress.class.getName()));
079 }
080
081 @Override
082 @SuppressWarnings("unused")
083 protected void performAction(Object object)
084 throws PortalException, SystemException {
085 EmailAddress stagedModel = (EmailAddress)object;
086
087 StagedModelDataHandlerUtil.exportStagedModel(_portletDataContext,
088 stagedModel);
089 }
090
091 private PortletDataContext _portletDataContext;
092 }