2015-02-16 16:27:49 +00:00
package org.keycloak.models ;
import java.util.HashMap ;
import java.util.Map ;
/ * *
* Output of credential validation
*
* @author < a href = " mailto:mposolda@redhat.com " > Marek Posolda < / a >
* /
public class CredentialValidationOutput {
private final UserModel authenticatedUser ; // authenticated user.
private final Status authStatus ; // status whether user is authenticated or more steps needed
2015-03-04 19:02:53 +00:00
private final Map < String , String > state ; // Additional state related to authentication. It can contain data to be sent back to client or data about used credentials.
2015-02-16 16:27:49 +00:00
2015-03-04 19:02:53 +00:00
public CredentialValidationOutput ( UserModel authenticatedUser , Status authStatus , Map < String , String > state ) {
2015-02-16 16:27:49 +00:00
this . authenticatedUser = authenticatedUser ;
this . authStatus = authStatus ;
this . state = state ;
}
public static CredentialValidationOutput failed ( ) {
2015-03-04 19:02:53 +00:00
return new CredentialValidationOutput ( null , CredentialValidationOutput . Status . FAILED , new HashMap < String , String > ( ) ) ;
2015-02-16 16:27:49 +00:00
}
public UserModel getAuthenticatedUser ( ) {
return authenticatedUser ;
}
public Status getAuthStatus ( ) {
return authStatus ;
}
2015-03-04 19:02:53 +00:00
public Map < String , String > getState ( ) {
2015-02-16 16:27:49 +00:00
return state ;
}
public CredentialValidationOutput merge ( CredentialValidationOutput that ) {
throw new IllegalStateException ( " Not supported yet " ) ;
}
public static enum Status {
AUTHENTICATED , FAILED , CONTINUE
}
}