You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by ro...@apache.org on 2014/12/12 01:35:48 UTC

[6/7] incubator-usergrid git commit: USERGRID-258 Introduce config options for organizations to fetch on login.

USERGRID-258 Introduce config options for organizations to fetch on login.


Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/bbdeafa4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/bbdeafa4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/bbdeafa4

Branch: refs/heads/master
Commit: bbdeafa4858dd386303beddf581092a3d4983692
Parents: 541e8ec
Author: John D. Ament <jo...@apache.org>
Authored: Fri Nov 28 16:04:34 2014 -0500
Committer: John D. Ament <jo...@apache.org>
Committed: Fri Nov 28 16:04:34 2014 -0500

----------------------------------------------------------------------
 .../apache/usergrid/management/AccountCreationProps.java | 11 +++++++++++
 .../management/cassandra/AccountCreationPropsImpl.java   |  8 ++++++++
 .../management/cassandra/ManagementServiceImpl.java      |  3 ++-
 3 files changed, 21 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/bbdeafa4/stack/services/src/main/java/org/apache/usergrid/management/AccountCreationProps.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/AccountCreationProps.java b/stack/services/src/main/java/org/apache/usergrid/management/AccountCreationProps.java
index 90263c4..6c000e2 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/AccountCreationProps.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/AccountCreationProps.java
@@ -61,6 +61,7 @@ public interface AccountCreationProps {
     public static final String PROPERTIES_ADMIN_CONFIRMATION_URL = "usergrid.admin.confirmation.url";
     public static final String PROPERTIES_ORGANIZATION_ACTIVATION_URL = "usergrid.organization.activation.url";
     public static final String PROPERTIES_ADMIN_RESETPW_URL = "usergrid.admin.resetpw.url";
+    public static final String PROPERTIES_USERGRID_SYSADMIN_LOGIN_FETCH_ORGS = "usergrid.sysadmin.login.fetch_orgs";
 
     public static final String PROPERTIES_ADMIN_USERS_REQUIRE_CONFIRMATION =
             "usergrid.management.admin_users_require_confirmation";
@@ -110,12 +111,22 @@ public interface AccountCreationProps {
 
     public boolean notifyAdminOfActivation();
 
+    /**
+     * Retrieves the maximum number of organizations to show when the admin logs in.
+     * Default is 10
+     *
+     * @return
+     */
+    public int getMaxOrganizationsForSuperUserLogin();
+
     public String getProperty( String name );
 
     public String getProperty( String name, String defaultValue );
 
     public boolean isProperty( String name );
 
+    public int intProperty( String name, String defaultValue );
+
     public void setProperty( String name, String value );
 
     public Properties getMailProperties();

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/bbdeafa4/stack/services/src/main/java/org/apache/usergrid/management/cassandra/AccountCreationPropsImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/AccountCreationPropsImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/AccountCreationPropsImpl.java
index 0f9f8d7..0aedf39 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/AccountCreationPropsImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/AccountCreationPropsImpl.java
@@ -26,6 +26,7 @@ import org.apache.usergrid.management.AccountCreationProps;
 
 import static java.lang.Boolean.parseBoolean;
 
+import static java.lang.Integer.parseInt;
 import static org.apache.commons.lang.StringUtils.isBlank;
 import static org.apache.usergrid.utils.ListUtils.anyNull;
 
@@ -77,6 +78,10 @@ public class AccountCreationPropsImpl implements AccountCreationProps {
         return isProperty( PROPERTIES_NOTIFY_ADMIN_OF_ACTIVATION );
     }
 
+    public int getMaxOrganizationsForSuperUserLogin() {
+        return intProperty( PROPERTIES_USERGRID_SYSADMIN_LOGIN_FETCH_ORGS, "10" );
+    }
+
 
     public String getProperty( String name ) {
         String propertyValue = properties.getProperty( name );
@@ -97,6 +102,9 @@ public class AccountCreationPropsImpl implements AccountCreationProps {
         return parseBoolean( getProperty( name ) );
     }
 
+    public int intProperty( String name, String defaultValue ) {
+        return parseInt( getProperty( name, defaultValue ) );
+    }
 
     public void setProperty( String name, String value ) {
         properties.setProperty( name, value );

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/bbdeafa4/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
index 8c7f420..a2e1271 100644
--- a/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
+++ b/stack/services/src/main/java/org/apache/usergrid/management/cassandra/ManagementServiceImpl.java
@@ -1491,7 +1491,8 @@ public class ManagementServiceImpl implements ManagementService {
 
         AccountCreationProps.SuperUser superUser = properties.getSuperUser();
         if ( superUser.isEnabled() && superUser.getUsername().equals( user.getUsername() ) ) {
-            organizations = buildOrgBiMap( getOrganizations( null, 10000 ) );
+            int maxOrganizations = this.getAccountCreationProps().getMaxOrganizationsForSuperUserLogin();
+            organizations = buildOrgBiMap( getOrganizations( null, maxOrganizations ) );
         }
         else {
             organizations = getOrganizationsForAdminUser( user.getUuid() );