1 22 package org.jboss.metadata; 23 24 import org.jboss.deployment.DeploymentException; 25 import org.w3c.dom.Element ; 26 27 41 public class SecurityIdentityMetaData extends MetaData 42 { 43 private String description; 44 49 private boolean useCallerIdentity; 50 54 private String runAsRoleName; 55 58 private String runAsPrincipalName; 59 60 public String getDescription() 61 { 62 return description; 63 } 64 65 public boolean getUseCallerIdentity() 66 { 67 return useCallerIdentity; 68 } 69 public void setUseCallerIdentity(boolean flag) 70 { 71 this.useCallerIdentity = flag; 72 } 73 74 public String getRunAsRoleName() 75 { 76 return runAsRoleName; 77 } 78 public void setRunAsRoleName(String runAsRoleName) 79 { 80 this.runAsRoleName = runAsRoleName; 81 } 82 83 public String getRunAsPrincipalName() 84 { 85 return runAsPrincipalName; 86 } 87 88 public void setRunAsPrincipalName(String principalName) 89 { 90 this.runAsPrincipalName = principalName; 91 } 92 93 96 public void importEjbJarXml(Element element) throws DeploymentException 97 { 98 description = getElementContent(getOptionalChild(element, "description")); 99 Element callerIdent = getOptionalChild(element, "use-caller-identity"); 100 Element runAs = getOptionalChild(element, "run-as"); 101 if (callerIdent == null && runAs == null) 102 throw new DeploymentException("security-identity: either use-caller-identity or run-as must be specified"); 103 if (callerIdent != null && runAs != null) 104 throw new DeploymentException("security-identity: only one of use-caller-identity or run-as can be specified"); 105 if (callerIdent != null) 106 { 107 useCallerIdentity = true; 108 } 109 else 110 { 111 runAsRoleName = getElementContent(getUniqueChild(runAs, "role-name")); 112 } 113 } 114 } 115 | Popular Tags |