public static AuthenticationPlugin processAuthPlugin ( String plugin , String password , byte [ ] authData , Options options ) throws SQLException { switch ( plugin ) { case MYSQL_NATIVE_PASSWORD : return new NativePasswordPlugin ( password , authData , options . passwordCharacterEncoding ) ; case MYSQL_OLD_PASSWORD : return new OldPasswordPlugin ( password , authData ) ; case MYSQL_CLEAR_PASSWORD : return new ClearPasswordPlugin ( password , options . passwordCharacterEncoding ) ; case DIALOG : return new SendPamAuthPacket ( password , authData , options . passwordCharacterEncoding ) ; case GSSAPI_CLIENT : return new SendGssApiAuthPacket ( authData , options . servicePrincipalName ) ; case MYSQL_ED25519_PASSWORD : return new Ed25519PasswordPlugin ( password , authData , options . passwordCharacterEncoding ) ; default : throw new SQLException ( "Client does not support authentication protocol requested by server. " + "Consider upgrading MariaDB client. plugin was = " + plugin , "08004" , 1251 ) ; } }
Process AuthenticationSwitch .