package org.apereo.cas.services; import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apereo.cas.authentication.principal.Principal; import org.apereo.cas.authentication.principal.Service; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * Resolves the username for the service to be the default principal id. * @author Misagh Moayyed * @since 4.1.0 */ public class DefaultRegisteredServiceUsernameProvider extends BaseRegisteredServiceUsernameAttributeProvider { private static final long serialVersionUID = 5823989148794052951L; private static final Logger LOGGER = LoggerFactory.getLogger(DefaultRegisteredServiceUsernameProvider.class); public DefaultRegisteredServiceUsernameProvider() { } public DefaultRegisteredServiceUsernameProvider(final String canonicalizationMode) { super(canonicalizationMode); } @Override public String resolveUsernameInternal(final Principal principal, final Service service) { LOGGER.debug("Returning the default principal id [{}] for username.", principal.getId()); return principal.getId(); } @Override public boolean equals(final Object obj) { if (obj == null) { return false; } if (obj == this) { return true; } return obj.getClass() == getClass(); } @Override public int hashCode() { return new HashCodeBuilder(13, 113).toHashCode(); } }