package org.atricore.idbus.capabilities.sso.support.federation; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.atricore.idbus.kernel.main.federation.IdentityMapper; import javax.security.auth.Subject; import java.security.Principal; import java.util.Set; /** * The mapped subject contains local sujbect information * * @author <a href="mailto:sgonzalez@atricore.org">Sebastian Gonzalez Oyuela</a> * @version $Id$ */ public class LocalSubjectIdentityMapper implements IdentityMapper { private static final Log logger = LogFactory.getLog(LocalSubjectIdentityMapper.class); public Subject map(Subject remoteSubject, Subject localSubject, Set<Principal> additionalPrincipals) { if (additionalPrincipals != null) { // TODO : Subject may be read-only localSubject.getPrincipals().addAll(additionalPrincipals); } return localSubject; } public Subject map(Subject remoteSubject, Subject localSubject) { return map(remoteSubject, localSubject, null); } }