Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LPS-149508 #116956

Closed

LPS-149508 #116956

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@
package com.liferay.object.internal.model.listener;

import com.liferay.object.model.ObjectAction;
import com.liferay.portal.kernel.audit.AuditMessage;
import com.liferay.portal.kernel.audit.AuditRouter;
import com.liferay.portal.kernel.exception.ModelListenerException;
import com.liferay.portal.kernel.json.JSONObject;
import com.liferay.portal.kernel.model.BaseModelListener;
import com.liferay.portal.kernel.model.ModelListener;
import com.liferay.portal.security.audit.event.generators.constants.EventTypes;
Expand All @@ -39,37 +41,55 @@ public class ObjectActionModelListener extends BaseModelListener<ObjectAction> {
public void onBeforeCreate(ObjectAction objectAction)
throws ModelListenerException {

auditObjectAction(
null, objectAction.getObjectActionId(), EventTypes.ADD);
auditOnCreateOrRemove(EventTypes.ADD, objectAction);
}

@Override
public void onBeforeRemove(ObjectAction objectAction)
throws ModelListenerException {

auditObjectAction(
null, objectAction.getObjectActionId(), EventTypes.DELETE);
auditOnCreateOrRemove(EventTypes.DELETE, objectAction);
}

@Override
public void onBeforeUpdate(
ObjectAction originalObjectAction, ObjectAction objectAction)
throws ModelListenerException {

auditObjectAction(
_getModifiedAttributes(originalObjectAction, objectAction),
objectAction.getObjectActionId(), EventTypes.UPDATE);
try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
EventTypes.UPDATE, ObjectAction.class.getName(),
objectAction.getObjectActionId(),
_getModifiedAttributes(
originalObjectAction, objectAction)));
}
catch (Exception exception) {
throw new ModelListenerException(exception);
}
}

protected void auditObjectAction(
List<Attribute> attributes, long classPK, String eventType)
protected void auditOnCreateOrRemove(
String eventType, ObjectAction objectAction)
throws ModelListenerException {

try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
eventType, ObjectAction.class.getName(), classPK,
attributes));
AuditMessage auditMessage = AuditMessageBuilder.buildAuditMessage(
eventType, ObjectAction.class.getName(),
objectAction.getObjectActionId(), null);

JSONObject additionalInfoJSONObject =
auditMessage.getAdditionalInfo();

additionalInfoJSONObject.put(
"active", objectAction.isActive()
).put(
"name", objectAction.getName()
).put(
"parameters", objectAction.getParameters()
);

_auditRouter.route(auditMessage);
}
catch (Exception exception) {
throw new ModelListenerException(exception);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@
package com.liferay.object.internal.model.listener;

import com.liferay.object.model.ObjectDefinition;
import com.liferay.portal.kernel.audit.AuditMessage;
import com.liferay.portal.kernel.audit.AuditRouter;
import com.liferay.portal.kernel.exception.ModelListenerException;
import com.liferay.portal.kernel.json.JSONObject;
import com.liferay.portal.kernel.model.BaseModelListener;
import com.liferay.portal.kernel.model.ModelListener;
import com.liferay.portal.security.audit.event.generators.constants.EventTypes;
Expand All @@ -40,16 +42,14 @@ public class ObjectDefinitionModelListener
public void onBeforeCreate(ObjectDefinition objectDefinition)
throws ModelListenerException {

auditObjectDefinition(
null, objectDefinition.getObjectDefinitionId(), EventTypes.ADD);
auditOnCreateOrRemove(EventTypes.ADD, objectDefinition);
}

@Override
public void onBeforeRemove(ObjectDefinition objectDefinition)
throws ModelListenerException {

auditObjectDefinition(
null, objectDefinition.getObjectDefinitionId(), EventTypes.DELETE);
auditOnCreateOrRemove(EventTypes.DELETE, objectDefinition);
}

@Override
Expand All @@ -58,20 +58,42 @@ public void onBeforeUpdate(
ObjectDefinition objectDefinition)
throws ModelListenerException {

auditObjectDefinition(
_getModifiedAttributes(originalObjectDefinition, objectDefinition),
objectDefinition.getObjectDefinitionId(), EventTypes.UPDATE);
try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
EventTypes.UPDATE, ObjectDefinition.class.getName(),
objectDefinition.getObjectDefinitionId(),
_getModifiedAttributes(
originalObjectDefinition, objectDefinition)));
}
catch (Exception exception) {
throw new ModelListenerException(exception);
}
}

protected void auditObjectDefinition(
List<Attribute> attributes, long classPK, String eventType)
protected void auditOnCreateOrRemove(
String eventType, ObjectDefinition objectDefinition)
throws ModelListenerException {

try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
eventType, ObjectDefinition.class.getName(), classPK,
attributes));
AuditMessage auditMessage = AuditMessageBuilder.buildAuditMessage(
eventType, ObjectDefinition.class.getName(),
objectDefinition.getObjectDefinitionId(), null);

JSONObject additionalInfoJSONObject =
auditMessage.getAdditionalInfo();

additionalInfoJSONObject.put(
"active", objectDefinition.isActive()
).put(
"labelMap", objectDefinition.getLabelMap()
).put(
"name", objectDefinition.getName()
).put(
"scope", objectDefinition.getScope()
);

_auditRouter.route(auditMessage);
}
catch (Exception exception) {
throw new ModelListenerException(exception);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@
package com.liferay.object.internal.model.listener;

import com.liferay.object.model.ObjectField;
import com.liferay.portal.kernel.audit.AuditMessage;
import com.liferay.portal.kernel.audit.AuditRouter;
import com.liferay.portal.kernel.exception.ModelListenerException;
import com.liferay.portal.kernel.json.JSONObject;
import com.liferay.portal.kernel.model.BaseModelListener;
import com.liferay.portal.kernel.model.ModelListener;
import com.liferay.portal.security.audit.event.generators.constants.EventTypes;
Expand All @@ -39,36 +41,68 @@ public class ObjectFieldModelListener extends BaseModelListener<ObjectField> {
public void onBeforeCreate(ObjectField objectField)
throws ModelListenerException {

auditObjectField(null, objectField.getObjectFieldId(), EventTypes.ADD);
auditOnCreateOrRemove(EventTypes.ADD, objectField);
}

@Override
public void onBeforeRemove(ObjectField objectField)
throws ModelListenerException {

auditObjectField(
null, objectField.getObjectFieldId(), EventTypes.DELETE);
auditOnCreateOrRemove(EventTypes.DELETE, objectField);
}

@Override
public void onBeforeUpdate(
ObjectField originalObjectField, ObjectField objectField)
throws ModelListenerException {

auditObjectField(
_getModifiedAttributes(originalObjectField, objectField),
objectField.getObjectFieldId(), EventTypes.UPDATE);
try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
EventTypes.UPDATE, ObjectField.class.getName(),
objectField.getObjectFieldId(),
_getModifiedAttributes(originalObjectField, objectField)));
}
catch (Exception exception) {
throw new ModelListenerException(exception);
}
}

protected void auditObjectField(
List<Attribute> attributes, long classPK, String eventType)
protected void auditOnCreateOrRemove(
String eventType, ObjectField objectField)
throws ModelListenerException {

try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
eventType, ObjectField.class.getName(), classPK,
attributes));
AuditMessage auditMessage = AuditMessageBuilder.buildAuditMessage(
eventType, ObjectField.class.getName(),
objectField.getObjectFieldId(), null);

JSONObject additionalInfoJSONObject =
auditMessage.getAdditionalInfo();

additionalInfoJSONObject.put(
"businessType", objectField.getBusinessType()
).put(
"DBColumnName", objectField.getDBColumnName()
).put(
"DBType", objectField.getDBType()
).put(
"indexed", objectField.isIndexed()
).put(
"indexedAsKeyword", objectField.isIndexedAsKeyword()
).put(
"indexedLanguageId", objectField.getIndexedLanguageId()
).put(
"labelMap", objectField.getLabelMap()
).put(
"listTypeDefinitionId", objectField.getListTypeDefinitionId()
).put(
"name", objectField.getName()
).put(
"required", objectField.isRequired()
);

_auditRouter.route(auditMessage);
}
catch (Exception exception) {
throw new ModelListenerException(exception);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@
package com.liferay.object.internal.model.listener;

import com.liferay.object.model.ObjectFieldSetting;
import com.liferay.portal.kernel.audit.AuditMessage;
import com.liferay.portal.kernel.audit.AuditRouter;
import com.liferay.portal.kernel.exception.ModelListenerException;
import com.liferay.portal.kernel.json.JSONObject;
import com.liferay.portal.kernel.model.BaseModelListener;
import com.liferay.portal.kernel.model.ModelListener;
import com.liferay.portal.security.audit.event.generators.constants.EventTypes;
Expand All @@ -40,17 +42,14 @@ public class ObjectFieldSettingModelListener
public void onBeforeCreate(ObjectFieldSetting objectFieldSetting)
throws ModelListenerException {

auditObjectFieldSetting(
null, objectFieldSetting.getObjectFieldSettingId(), EventTypes.ADD);
auditOnCreateOrRemove(EventTypes.ADD, objectFieldSetting);
}

@Override
public void onBeforeRemove(ObjectFieldSetting objectFieldSetting)
throws ModelListenerException {

auditObjectFieldSetting(
null, objectFieldSetting.getObjectFieldSettingId(),
EventTypes.DELETE);
auditOnCreateOrRemove(EventTypes.DELETE, objectFieldSetting);
}

@Override
Expand All @@ -59,21 +58,40 @@ public void onBeforeUpdate(
ObjectFieldSetting objectFieldSetting)
throws ModelListenerException {

auditObjectFieldSetting(
_getModifiedAttributes(
originalOObjectFieldSetting, objectFieldSetting),
objectFieldSetting.getObjectFieldSettingId(), EventTypes.UPDATE);
try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
EventTypes.UPDATE, ObjectFieldSetting.class.getName(),
objectFieldSetting.getObjectFieldSettingId(),
_getModifiedAttributes(
originalOObjectFieldSetting, objectFieldSetting)));
}
catch (Exception exception) {
throw new ModelListenerException(exception);
}
}

protected void auditObjectFieldSetting(
List<Attribute> attributes, long classPK, String eventType)
protected void auditOnCreateOrRemove(
String eventType, ObjectFieldSetting objectFieldSetting)
throws ModelListenerException {

try {
_auditRouter.route(
AuditMessageBuilder.buildAuditMessage(
eventType, ObjectFieldSetting.class.getName(), classPK,
attributes));
AuditMessage auditMessage = AuditMessageBuilder.buildAuditMessage(
eventType, ObjectFieldSetting.class.getName(),
objectFieldSetting.getObjectFieldSettingId(), null);

JSONObject additionalInfoJSONObject =
auditMessage.getAdditionalInfo();

additionalInfoJSONObject.put(
"name", objectFieldSetting.getName()
).put(
"objectFieldId", objectFieldSetting.getObjectFieldId()
).put(
"value", objectFieldSetting.getValue()
);

_auditRouter.route(auditMessage);
}
catch (Exception exception) {
throw new ModelListenerException(exception);
Expand Down