MIFOSX-716: evict user caches when roles and permissions change to stop stale data being returned.
This commit is contained in:
+5
@@ -19,6 +19,8 @@ import org.mifosplatform.useradministration.domain.PermissionRepository;
|
||||
import org.mifosplatform.useradministration.exception.PermissionNotFoundException;
|
||||
import org.mifosplatform.useradministration.serialization.PermissionsCommandFromApiJsonDeserializer;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
import org.springframework.cache.annotation.Caching;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -37,6 +39,9 @@ public class PermissionWritePlatformServiceJpaRepositoryImpl implements Permissi
|
||||
this.fromApiJsonDeserializer = fromApiJsonDeserializer;
|
||||
}
|
||||
|
||||
@Caching(evict = {
|
||||
@CacheEvict(value = "users", allEntries = true),
|
||||
@CacheEvict(value = "usersByUsername", allEntries = true)})
|
||||
@Transactional
|
||||
@Override
|
||||
public CommandProcessingResult updateMakerCheckerPermissions(final JsonCommand command) {
|
||||
|
||||
+8
@@ -25,6 +25,8 @@ import org.mifosplatform.useradministration.serialization.PermissionsCommandFrom
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.CacheEvict;
|
||||
import org.springframework.cache.annotation.Caching;
|
||||
import org.springframework.dao.DataIntegrityViolationException;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -95,6 +97,9 @@ public class RoleWritePlatformServiceJpaRepositoryImpl implements RoleWritePlatf
|
||||
logger.error(dve.getMessage(), dve);
|
||||
}
|
||||
|
||||
@Caching(evict = {
|
||||
@CacheEvict(value = "users", allEntries = true),
|
||||
@CacheEvict(value = "usersByUsername", allEntries = true)})
|
||||
@Transactional
|
||||
@Override
|
||||
public CommandProcessingResult updateRole(final Long roleId, final JsonCommand command) {
|
||||
@@ -124,6 +129,9 @@ public class RoleWritePlatformServiceJpaRepositoryImpl implements RoleWritePlatf
|
||||
}
|
||||
}
|
||||
|
||||
@Caching(evict = {
|
||||
@CacheEvict(value = "users", allEntries = true),
|
||||
@CacheEvict(value = "usersByUsername", allEntries = true)})
|
||||
@Transactional
|
||||
@Override
|
||||
public CommandProcessingResult updateRolePermissions(final Long roleId, final JsonCommand command) {
|
||||
|
||||
Reference in New Issue
Block a user