Search in sources :

Example 1 with PersistentIdGenerator

use of org.apereo.cas.authentication.principal.PersistentIdGenerator in project cas by apereo.

the class DefaultUsernameAttributeProviderMapper method mapUsernameAttributeProvider.

@Override
public void mapUsernameAttributeProvider(final RegisteredServiceUsernameAttributeProvider provider, final ServiceData bean) {
    final RegisteredServiceUsernameAttributeProviderEditBean uBean = bean.getUserAttrProvider();
    if (provider instanceof DefaultRegisteredServiceUsernameProvider) {
        uBean.setType(RegisteredServiceUsernameAttributeProviderEditBean.Types.DEFAULT.toString());
    } else if (provider instanceof AnonymousRegisteredServiceUsernameAttributeProvider) {
        final AnonymousRegisteredServiceUsernameAttributeProvider anonymous = (AnonymousRegisteredServiceUsernameAttributeProvider) provider;
        uBean.setType(RegisteredServiceUsernameAttributeProviderEditBean.Types.ANONYMOUS.toString());
        final PersistentIdGenerator generator = anonymous.getPersistentIdGenerator();
        if (generator instanceof ShibbolethCompatiblePersistentIdGenerator) {
            final ShibbolethCompatiblePersistentIdGenerator sh = (ShibbolethCompatiblePersistentIdGenerator) generator;
            if (sh.getSalt() != null) {
                final String salt = new String(sh.getSalt(), Charset.defaultCharset());
                uBean.setValue(salt);
            } else {
                throw new IllegalArgumentException("Salt cannot be null");
            }
        }
    } else if (provider instanceof PrincipalAttributeRegisteredServiceUsernameProvider) {
        final PrincipalAttributeRegisteredServiceUsernameProvider p = (PrincipalAttributeRegisteredServiceUsernameProvider) provider;
        uBean.setType(RegisteredServiceUsernameAttributeProviderEditBean.Types.ATTRIBUTE.toString());
        uBean.setValue(p.getUsernameAttribute());
    }
}
Also used : AnonymousRegisteredServiceUsernameAttributeProvider(org.apereo.cas.services.AnonymousRegisteredServiceUsernameAttributeProvider) RegisteredServiceUsernameAttributeProviderEditBean(org.apereo.cas.mgmt.services.web.beans.RegisteredServiceUsernameAttributeProviderEditBean) PrincipalAttributeRegisteredServiceUsernameProvider(org.apereo.cas.services.PrincipalAttributeRegisteredServiceUsernameProvider) DefaultRegisteredServiceUsernameProvider(org.apereo.cas.services.DefaultRegisteredServiceUsernameProvider) ShibbolethCompatiblePersistentIdGenerator(org.apereo.cas.authentication.principal.ShibbolethCompatiblePersistentIdGenerator) ShibbolethCompatiblePersistentIdGenerator(org.apereo.cas.authentication.principal.ShibbolethCompatiblePersistentIdGenerator) PersistentIdGenerator(org.apereo.cas.authentication.principal.PersistentIdGenerator)

Aggregations

PersistentIdGenerator (org.apereo.cas.authentication.principal.PersistentIdGenerator)1 ShibbolethCompatiblePersistentIdGenerator (org.apereo.cas.authentication.principal.ShibbolethCompatiblePersistentIdGenerator)1 RegisteredServiceUsernameAttributeProviderEditBean (org.apereo.cas.mgmt.services.web.beans.RegisteredServiceUsernameAttributeProviderEditBean)1 AnonymousRegisteredServiceUsernameAttributeProvider (org.apereo.cas.services.AnonymousRegisteredServiceUsernameAttributeProvider)1 DefaultRegisteredServiceUsernameProvider (org.apereo.cas.services.DefaultRegisteredServiceUsernameProvider)1 PrincipalAttributeRegisteredServiceUsernameProvider (org.apereo.cas.services.PrincipalAttributeRegisteredServiceUsernameProvider)1