com.liferay.object.internal.uad.exporter.ObjectEntryUADExporter 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.internal.uad.exporter;
import com.liferay.object.internal.uad.constants.ObjectUADConstants;
import com.liferay.object.internal.uad.util.ObjectEntryUADUtil;
import com.liferay.object.model.ObjectDefinition;
import com.liferay.object.model.ObjectEntry;
import com.liferay.object.service.ObjectEntryLocalService;
import com.liferay.petra.string.StringBundler;
import com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery;
import com.liferay.user.associated.data.exporter.DynamicQueryUADExporter;
import java.io.Serializable;
import java.util.Map;
import java.util.Objects;
/**
* @author Carolina Barbosa
*/
public class ObjectEntryUADExporter
extends DynamicQueryUADExporter {
public ObjectEntryUADExporter(
ObjectDefinition objectDefinition,
ObjectEntryLocalService objectEntryLocalService) {
_objectDefinition = objectDefinition;
_objectEntryLocalService = objectEntryLocalService;
}
@Override
public Class getTypeClass() {
return ObjectEntry.class;
}
@Override
public String getTypeKey() {
return _objectDefinition.getClassName();
}
@Override
protected ActionableDynamicQuery doGetActionableDynamicQuery() {
return ObjectEntryUADUtil.addActionableDynamicQueryCriteria(
_objectEntryLocalService.getActionableDynamicQuery(),
_objectDefinition.getObjectDefinitionId());
}
@Override
protected String[] doGetUserIdFieldNames() {
return ObjectUADConstants.USER_ID_FIELD_NAMES_OBJECT_ENTRY;
}
@Override
protected ActionableDynamicQuery getActionableDynamicQuery(long userId) {
return ObjectEntryUADUtil.addActionableDynamicQueryCriteria(
doGetActionableDynamicQuery(), doGetUserIdFieldNames(), userId);
}
@Override
protected String toXmlString(ObjectEntry objectEntry) {
StringBundler sb = new StringBundler();
sb.append(
StringBundler.concat(
"", _objectDefinition.getClassName(),
" "));
sb.append(
_getColumn(
"objectEntryId",
String.valueOf(objectEntry.getObjectEntryId())));
sb.append(
_getColumn(
"statusByUserId",
String.valueOf(objectEntry.getStatusByUserId())));
sb.append(
_getColumn("statusByUserName", objectEntry.getStatusByUserName()));
sb.append(
_getColumn("userId", String.valueOf(objectEntry.getUserId())));
sb.append(_getColumn("userName", objectEntry.getUserName()));
Map values = objectEntry.getValues();
for (Map.Entry entry : values.entrySet()) {
if (Objects.equals(
entry.getKey(), _objectDefinition.getPKObjectFieldName())) {
continue;
}
sb.append(
_getColumn(entry.getKey(), String.valueOf(entry.getValue())));
}
sb.append(" ");
return sb.toString();
}
private String _getColumn(String columnName, String columnValue) {
return StringBundler.concat(
"", columnName,
" ");
}
private final ObjectDefinition _objectDefinition;
private final ObjectEntryLocalService _objectEntryLocalService;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy