oracle.kv

## Interface ReauthenticateHandler

-     public interface ReauthenticateHandler

  A callback interface used when KVStore authentication has expired and requires renewal. When an application calls the KVStoreFactory.getStore() method and passes in a LoginCredentials object, it may also pass in an instance of an object that implements this interface. The object will be used to re-establish a login without interrupting the sequence of KVStore calls.
  Since:
    3.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `reauthenticate(KVStore kvstore)` Attempts to re-authenticate a kvstore handle.

- - ### Method Detail

    - #### reauthenticate

          void reauthenticate(KVStore kvstore)
                              throws RuntimeException

      Attempts to re-authenticate a kvstore handle. When an instance of this interface is provided in a call to KVStoreFactory.getStore(), this method is called by the KVStore client to perform the re-authentication needed to continue an operation on the store that would otherwise result in an AuthenticationRequiredException being thrown. The implementation should call KVStore.login() with valid credentials that match the user identity that was provided when the store was opened. If this method returns without throwing an exception but without successfully performing a re-authentication, the original AuthenticationRequiredException is re-thrown, bypassing this ReauthenticationHandler instance.

      This method should typically handle any `FaultException`s thrown by any calls made by its implementation. Any runtime exceptions thrown by this method will cause the original operation to fail by rethrowing an exception that will be seen by the application. If the FaultException thrown by the reauthenticate method is a KVSecurityException then the exception re-thrown to the application is the original AuthenticationRequiredException, otherwise the exception thrown by the reauthenticate method is re-thrown to the application.

      Parameters:
        `kvstore` - The KVStore instance that requires reauthentication
      Throws:
        `RuntimeException` - if the reauthentication failed

Copyright (c) 2011, 2014 Oracle and/or its affiliates. All rights reserved.