Methods Summary |
---|
public java.lang.String | getIncludeToken()
populate();
return includeTokenType;
|
public java.lang.String | getTokenId()
return id;
|
public java.util.Iterator | getTokenRefernceType()
if ( tokenRefType != null ) {
return tokenRefType.iterator();
} else {
return Collections.emptyList().iterator();
}
|
public java.lang.String | getTokenType()
populate();
return tokenType;
|
public boolean | isRequireDerivedKeys()
populate();
if (rdKey != null ) {
return true;
}
return false;
|
private void | populate()
populate(false);
|
private synchronized AssertionFitness | populate(boolean isServer)
if(!populated){
NestedPolicy policy = this.getNestedPolicy();
if(this.getAttributeValue(itQname) != null){
includeTokenType = this.getAttributeValue(itQname);
}
if(policy == null){
if(logger.getLevel() == Level.FINE){
logger.log(Level.FINE,"NestedPolicy is null");
}
populated = true;
return fitness;
}
AssertionSet as = policy.getAssertionSet();
Iterator<PolicyAssertion> paItr = as.iterator();
while(paItr.hasNext()){
PolicyAssertion assertion = paItr.next();
if(PolicyUtil.isSecurityContextTokenType(assertion)){
tokenType = assertion.getName().getLocalPart().intern();
}else if(PolicyUtil.isRequireDerivedKeys(assertion)){
rdKey = assertion;
}else if(PolicyUtil.isRequireExternalUriReference(assertion)){
if(referenceType == null){
referenceType =new HashSet<String>();
}
referenceType.add(assertion.getName().getLocalPart().intern());
} else{
if(!assertion.isOptional()){
if(logger.getLevel() == Level.SEVERE){
logger.log(Level.SEVERE,"SP0100.invalid.security.assertion",new Object[]{assertion,"SecurityContextToken"});
}
if(isServer){
throw new UnsupportedPolicyAssertion("Policy assertion "+
assertion+" is not supported under SecurityContextToken assertion");
}
}
}
}
populated = true;
}
return fitness;
|
public AssertionFitness | validate(boolean isServer)
return populate(isServer);
|