From 1b4952702e316695cef84cc7556f073fd469f4d0 Mon Sep 17 00:00:00 2001 From: Teryk Bellahsene Date: Tue, 29 Sep 2015 09:33:59 +0200 Subject: [PATCH] SONAR-6854 WS permissions/template_groups fix queries for Oracle --- .../org/sonar/db/permission/PermissionTemplateMapper.xml | 9 +++++++-- .../permission/GroupWithPermissionTemplateDaoTest.java | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/sonar-db/src/main/resources/org/sonar/db/permission/PermissionTemplateMapper.xml b/sonar-db/src/main/resources/org/sonar/db/permission/PermissionTemplateMapper.xml index ca220bbbfb4..f173f86eb24 100644 --- a/sonar-db/src/main/resources/org/sonar/db/permission/PermissionTemplateMapper.xml +++ b/sonar-db/src/main/resources/org/sonar/db/permission/PermissionTemplateMapper.xml @@ -117,6 +117,7 @@ AND ptg.template_id=#{templateId} AND ptg.group_id IS NULL ) as permission + FROM groups g ) groups @@ -143,13 +144,17 @@ AND ptg.template_id=#{templateId} UNION -- Add Anyone group permission - SELECT #{anyoneGroup} as name, NULL as description, ptg.permission_reference as permission + SELECT + #{anyoneGroup} as name, + NULL as description, + (select ptg.permission_reference FROM perm_templates_groups ptg AND ptg.permission_reference=#{query.permission} AND ptg.template_id=#{templateId} AND ptg.group_id IS NULL - + ) as permission + FROM groups g ) groups diff --git a/sonar-db/src/test/java/org/sonar/db/permission/GroupWithPermissionTemplateDaoTest.java b/sonar-db/src/test/java/org/sonar/db/permission/GroupWithPermissionTemplateDaoTest.java index 90bc61b3408..0370a002ced 100644 --- a/sonar-db/src/test/java/org/sonar/db/permission/GroupWithPermissionTemplateDaoTest.java +++ b/sonar-db/src/test/java/org/sonar/db/permission/GroupWithPermissionTemplateDaoTest.java @@ -75,7 +75,7 @@ public class GroupWithPermissionTemplateDaoTest { } @Test - public void anyone_group_is_not_returned_when_it_has_no_permission() { + public void anyone_group_is_returned_when_it_has_no_permission() { dbTester.prepareDbUnit(getClass(), "groups_with_permissions.xml"); // Anyone group is returned even if it doesn't have the permission -- 2.39.5