in services/sts/src/main/java/org/apache/cxf/fediz/service/sts/realms/RealmFileClaimsHandler.java [72:113]
public ProcessedClaimCollection retrieveClaimValues(ClaimCollection claims,
ClaimsParameters parameters) {
if (parameters.getRealm() == null || !parameters.getRealm().equalsIgnoreCase(getRealm())) {
LOG.fine("Realm '" + parameters.getRealm() + "' doesn't match with configured realm '" + getRealm() + "'");
return new ProcessedClaimCollection();
}
if (getUserClaims() == null || parameters.getPrincipal() == null) {
return new ProcessedClaimCollection();
}
if (claims == null || claims.isEmpty()) {
LOG.fine("No claims requested");
return new ProcessedClaimCollection();
}
Map<String, String> claimMap = getUserClaims().get(parameters.getPrincipal().getName());
if (claimMap == null || claimMap.isEmpty()) {
LOG.fine("Claims requested for principal '" + parameters.getPrincipal().getName()
+ "' but not found");
return new ProcessedClaimCollection();
}
LOG.fine("Claims found for principal '" + parameters.getPrincipal().getName() + "'");
if (!claims.isEmpty()) {
ProcessedClaimCollection claimCollection = new ProcessedClaimCollection();
for (Claim requestClaim : claims) {
String claimValue = claimMap.get(requestClaim.getClaimType());
if (claimValue != null) {
ProcessedClaim claim = new ProcessedClaim();
claim.setClaimType(requestClaim.getClaimType());
claim.setIssuer("Test Issuer");
claim.setOriginalIssuer("Original Issuer");
claim.addValue(claimValue);
claimCollection.add(claim);
}
}
return claimCollection;
}
return null;
}