in src/main/java/org/apache/sling/serviceusermapping/impl/ServiceUserMapperImpl.java [582:610]
private Iterable<String> internalGetPrincipalNames(final String serviceName, final String subServiceName) {
log.debug(
"internalGetPrincipalNames: {} active mappings, looking for mapping for {}/{}",
new Object[] { this.activeMappings.length, serviceName, subServiceName });
for (final Mapping mapping : this.activeMappings) {
final Iterable<String> principalNames = mapping.mapPrincipals(serviceName, subServiceName);
if (principalNames != null) {
log.debug("Got principalNames [{}] from {}/{}", new Object[] {principalNames, serviceName, subServiceName });
return principalNames;
}
}
// second round without serviceInfo
log.debug(
"internalGetPrincipalNames: {} active mappings, looking for mapping for {}/<no subServiceName>",
this.activeMappings.length, serviceName);
for (Mapping mapping : this.activeMappings) {
final Iterable<String> principalNames = mapping.mapPrincipals(serviceName, null);
if (principalNames != null) {
log.debug("Got principalNames [{}] from {}/<no subServiceName>", principalNames, serviceName);
return principalNames;
}
}
log.debug("internalGetPrincipalNames: no mapping found.");
return null;
}