Examples of a custom SAML token parser
The following code snippet gives an example of a SAML token parser.
import com.workbrain.server.signoninterface.saml.Saml;
public class MySamlTokenParser implements Saml.TokenParser{
  @Override
  public Saml.Token parse(String encodedValue) {
    String userName = getUserName(encodedValue); 
    return new SamlToken().setUserName(userName);
  }
  private class SamlToken implements Saml.Token {
    private String userName;
  
    private SamlTokensetUserName(userName){
      this.userName = userName;
      return this;
    }
    @Override
    public String getUserName() {
      return userName;
    }
  }
}
….or with lambda expression usage:
import com.workbrain.server.signoninterface.saml.Saml;
public class MySamlTokenParser implements Saml.TokenParser{
  @Override 
  public Saml.Token parse(String encodedValue){ 
    String userName = getUserName(encodedValue); 
    return () -> userName; 
  }