//ToDo: all permissions are removed. but using queue manager, permissions may have set.
// ToDo: those permissions too removed. this is wrong
// remove consume/publish permissions
List<String> removePermissionOperations = removedPermissionLabel.getOperations();
for (String sharedUser : removedPermissionLabel.getSharedUsers()) {
QueueUserPermission queueUserPermission = new QueueUserPermission();
setPublishPermission(removePermissionOperations, queueUserPermission, false);
setConsumePermission(removePermissionOperations, queueUserPermission, false);
queueUserPermission.setUserName(sharedUser);
List<QueueUserPermission> userPermissions = new ArrayList<QueueUserPermission>();
userPermissions.add(queueUserPermission);
queueManager.updateUserPermission(userPermissions,
Utils.getTenantBasedQueueName(
JMSQueueHandler.getJMSQueueName(messageBoxId)));
}
// re-authorize removed permissions since those were authorized in a different permission label
for (PermissionLabel permissionLabel : otherAllowedPermissions) {
authorizationHandler.addPermission(messageBoxId, permissionLabel);
for (String sharedUser : permissionLabel.getSharedUsers()) {
QueueUserPermission queueUserPermission = new QueueUserPermission();
setPublishPermission(removePermissionOperations, queueUserPermission, true);
setConsumePermission(removePermissionOperations, queueUserPermission, true);
queueUserPermission.setUserName(sharedUser);
List<QueueUserPermission> userPermissions = new ArrayList<QueueUserPermission>();
userPermissions.add(queueUserPermission);
queueManager.updateUserPermission(userPermissions,