/** * Release principal id as attribute if needed. * * @param principal the principal * @param attributesToRelease the attributes to release * @param service the service * @param registeredService the registered service */ protected void insertPrincipalIdAsAttributeIfNeeded(final Principal principal, final Map<String, Object> attributesToRelease, final Service service, final RegisteredService registeredService) { if (StringUtils.isNotBlank(getPrincipalIdAttribute())) { LOGGER.debug("Attempting to resolve the principal id for service [{}]", registeredService.getServiceId()); val id = registeredService.getUsernameAttributeProvider().resolveUsername(principal, service, registeredService); LOGGER.debug("Releasing resolved principal id [{}] as attribute [{}]", id, getPrincipalIdAttribute()); attributesToRelease.put(getPrincipalIdAttribute(), principal.getId()); } }
val id = registeredService.getUsernameAttributeProvider().resolveUsername(principal, service, registeredService); LOGGER.debug("Created profile id [{}]", id);
.resolveUsername(principal, service, registeredService);
val principalId = registeredService.getUsernameAttributeProvider().resolveUsername(principal, selectedService, registeredService); val modifiedPrincipal = this.principalFactory.createPrincipal(principalId, attributesToRelease); val builder = DefaultAuthenticationBuilder.newInstance(authentication);
val principalId = registeredService.getUsernameAttributeProvider().resolveUsername(principal, selectedService, registeredService); val modifiedPrincipal = this.principalFactory.createPrincipal(principalId, attributesToRelease); val builder = DefaultAuthenticationBuilder.newInstance(authentication);