← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 15237: Encapsulated super user logic

 

------------------------------------------------------------
revno: 15237
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2014-05-12 18:37:39 +0200
message:
  Encapsulated super user logic
modified:
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/User.java
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserAuthorityGroup.java
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserCredentials.java
  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultCurrentUserService.java


--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk

Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/User.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/User.java	2014-04-16 14:01:54 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/User.java	2014-05-12 16:37:39 +0000
@@ -236,6 +236,11 @@
     {
         return userCredentials != null ? userCredentials.getUsername() : null;
     }
+    
+    public boolean isSuper()
+    {
+        return userCredentials != null && userCredentials.isSuper();
+    }
 
     // -------------------------------------------------------------------------
     // Getters and setters

=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserAuthorityGroup.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserAuthorityGroup.java	2014-03-24 19:11:38 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserAuthorityGroup.java	2014-05-12 16:37:39 +0000
@@ -85,7 +85,12 @@
         members.remove( userCredentials );
         userCredentials.getUserAuthorityGroups().remove( this );
     }
-
+    
+    public boolean isSuper()
+    {
+        return authorities != null && authorities.contains( AUTHORITY_ALL );
+    }
+    
     // -------------------------------------------------------------------------
     // Getters and setters
     // -------------------------------------------------------------------------

=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserCredentials.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserCredentials.java	2014-04-25 10:44:39 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserCredentials.java	2014-05-12 16:37:39 +0000
@@ -213,7 +213,7 @@
     {
         for ( UserAuthorityGroup group : userAuthorityGroups )
         {
-            if ( group.getAuthorities().contains( UserAuthorityGroup.AUTHORITY_ALL ) )
+            if ( group.isSuper() )
             {
                 return true;
             }

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultCurrentUserService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultCurrentUserService.java	2014-03-18 08:10:10 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultCurrentUserService.java	2014-05-12 16:37:39 +0000
@@ -39,8 +39,6 @@
 public class DefaultCurrentUserService
     extends AbstractSpringSecurityCurrentUserService
 {
-    private static final String SUPERUSER_AUTHORITY = "ALL";
-
     // -------------------------------------------------------------------------
     // Dependencies
     // -------------------------------------------------------------------------
@@ -91,14 +89,6 @@
             return false;
         }
 
-        for ( UserAuthorityGroup group : userCredentials.getUserAuthorityGroups() )
-        {
-            if ( group.getAuthorities().contains( SUPERUSER_AUTHORITY ) )
-            {
-                return true;
-            }
-        }
-
-        return false;
+        return userCredentials.isSuper();
     }
 }