You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by am...@apache.org on 2006/08/04 17:46:18 UTC

svn commit: r428760 - /geronimo/branches/1.1/modules/security-builder/src/java/org/apache/geronimo/security/deployment/SecurityBuilder.java

Author: ammulder
Date: Fri Aug  4 08:46:18 2006
New Revision: 428760

URL: http://svn.apache.org/viewvc?rev=428760&view=rev
Log:
Don't assume that default-principal contains a plain principal
  child (GERONIMO-2275)

Modified:
    geronimo/branches/1.1/modules/security-builder/src/java/org/apache/geronimo/security/deployment/SecurityBuilder.java

Modified: geronimo/branches/1.1/modules/security-builder/src/java/org/apache/geronimo/security/deployment/SecurityBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/branches/1.1/modules/security-builder/src/java/org/apache/geronimo/security/deployment/SecurityBuilder.java?rev=428760&r1=428759&r2=428760&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/security-builder/src/java/org/apache/geronimo/security/deployment/SecurityBuilder.java (original)
+++ geronimo/branches/1.1/modules/security-builder/src/java/org/apache/geronimo/security/deployment/SecurityBuilder.java Fri Aug  4 08:46:18 2006
@@ -202,7 +202,15 @@
     public static DefaultPrincipal buildDefaultPrincipal(GerDefaultPrincipalType defaultPrincipalType) {
         DefaultPrincipal defaultPrincipal = new DefaultPrincipal();
 
-        defaultPrincipal.setPrincipal(buildPrincipal(defaultPrincipalType.getPrincipal()));
+        if(defaultPrincipalType.isSetPrincipal()) {
+            defaultPrincipal.setPrincipal(buildPrincipal(defaultPrincipalType.getPrincipal()));
+        } else if(defaultPrincipalType.isSetLoginDomainPrincipal()) {
+            defaultPrincipal.setPrincipal(buildDomainPrincipal(defaultPrincipalType.getLoginDomainPrincipal()));
+        } else if(defaultPrincipalType.isSetRealmPrincipal()) {
+            defaultPrincipal.setPrincipal(buildRealmPrincipal(defaultPrincipalType.getRealmPrincipal()));
+        } else {
+            throw new IllegalStateException("default-principal does not contain a principal, login-domain-principal, or realm-principal");
+        }
         GerNamedUsernamePasswordCredentialType[] namedCredentials = defaultPrincipalType.getNamedUsernamePasswordCredentialArray();
         if (namedCredentials.length > 0) {
             Set defaultCredentialSet = new HashSet();