Search in sources :

Example 16 with IdmAuditDto

use of eu.bcvsolutions.idm.core.api.audit.dto.IdmAuditDto in project CzechIdMng by bcvsolutions.

the class DefaultAuditServiceTest method roleAuditTestCreateModify.

@Test
public void roleAuditTestCreateModify() {
    IdmRoleDto role = saveInTransaction(constructRole("audit_test_role"), roleService);
    List<IdmAuditDto> result = auditService.findRevisions(IdmRole.class, role.getId());
    assertEquals(1, result.size());
    role = roleService.get(role.getId());
    role.setName("audit_test_role_2");
    role.setDescription("desc");
    role = saveInTransaction(role, roleService);
    result = auditService.findRevisions(IdmRole.class, role.getId());
    assertEquals(2, result.size());
    IdmAuditDto audit = result.get(result.size() - 1);
    // now is disabled changed attributes TODO: fix envers transaction
    assertEquals(true, audit.getChangedAttributes().contains("name"));
    assertEquals(true, audit.getChangedAttributes().contains("description"));
    assertEquals(RevisionType.MOD.toString(), audit.getModification());
    IdmAuditDto audit2 = result.get(result.size() - result.size());
    assertEquals(RevisionType.ADD.toString(), audit2.getModification());
    assertEquals(true, audit2.getTimestamp() < audit.getTimestamp());
}
Also used : IdmRoleDto(eu.bcvsolutions.idm.core.api.dto.IdmRoleDto) IdmAuditDto(eu.bcvsolutions.idm.core.api.audit.dto.IdmAuditDto) IdmRole(eu.bcvsolutions.idm.core.model.entity.IdmRole) AbstractIntegrationTest(eu.bcvsolutions.idm.test.api.AbstractIntegrationTest) Test(org.junit.Test)

Example 17 with IdmAuditDto

use of eu.bcvsolutions.idm.core.api.audit.dto.IdmAuditDto in project CzechIdMng by bcvsolutions.

the class IdmAuditListener method entityChanged.

@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
public void entityChanged(Class entityClass, String entityName, Serializable entityId, RevisionType revisionType, Object revisionEntity) {
    // autowire services
    autowireServices();
    IdmAudit auditEntity = (IdmAudit) revisionEntity;
    if (auditEntity.getEntityId() != null) {
        // child revision
        IdmAuditDto childRevision = new IdmAuditDto();
        childRevision.setChangedAttributes(auditEntity.getTemporaryChangedColumns());
        childRevision.setTimestamp(((IdmAudit) revisionEntity).getTimestamp());
        this.changeRevisionDto((Class<AbstractEntity>) entityClass, entityName, (UUID) entityId, childRevision, revisionType);
        this.auditService.save(childRevision);
    } else {
        // parent revision
        this.changeRevisionEntity((Class<AbstractEntity>) entityClass, entityName, (UUID) entityId, auditEntity, revisionType);
    }
}
Also used : IdmAudit(eu.bcvsolutions.idm.core.audit.entity.IdmAudit) AbstractEntity(eu.bcvsolutions.idm.core.api.entity.AbstractEntity) IdmAuditDto(eu.bcvsolutions.idm.core.api.audit.dto.IdmAuditDto)

Aggregations

IdmAuditDto (eu.bcvsolutions.idm.core.api.audit.dto.IdmAuditDto)17 AbstractIntegrationTest (eu.bcvsolutions.idm.test.api.AbstractIntegrationTest)8 Test (org.junit.Test)8 ResultCodeException (eu.bcvsolutions.idm.core.api.exception.ResultCodeException)7 IdmIdentityDto (eu.bcvsolutions.idm.core.api.dto.IdmIdentityDto)6 IdmIdentity (eu.bcvsolutions.idm.core.model.entity.IdmIdentity)5 ApiOperation (io.swagger.annotations.ApiOperation)5 PreAuthorize (org.springframework.security.access.prepost.PreAuthorize)5 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)5 ResponseBody (org.springframework.web.bind.annotation.ResponseBody)5 IdmRole (eu.bcvsolutions.idm.core.model.entity.IdmRole)4 TransactionStatus (org.springframework.transaction.TransactionStatus)4 LinkedMultiValueMap (org.springframework.util.LinkedMultiValueMap)4 IdmRoleDto (eu.bcvsolutions.idm.core.api.dto.IdmRoleDto)3 IdmAuditFilter (eu.bcvsolutions.idm.core.api.audit.dto.filter.IdmAuditFilter)2 PageRequest (org.springframework.data.domain.PageRequest)2 Pageable (org.springframework.data.domain.Pageable)2 IdmTreeNodeDto (eu.bcvsolutions.idm.core.api.dto.IdmTreeNodeDto)1 AbstractEntity (eu.bcvsolutions.idm.core.api.entity.AbstractEntity)1 BaseEntity (eu.bcvsolutions.idm.core.api.entity.BaseEntity)1