Package org.apache.synapse.securevault

# Class SecretResolver

java.lang.Object
org.apache.synapse.securevault.SecretResolver

public class SecretResolver extends Object
Responsible for resolving secrets such as password. The secrets this SecretResolver should be resolved , can be given as protected Tokens and the use of this class can explicitly check whether a token is protected.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SecretResolver()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addProtectedToken(String token)`
  Registers a token as a Protected Token
  `void`
  `init(SecretCallbackHandler secretCallbackHandler)`
  Initializes by giving an instance of `SecretCallbackHandler` to be used to retrieve secrets
  `boolean`
  `isInitialized()`
  Checks the state of the rule engine.
  `boolean`
  `isTokenProtected(String token)`
  Checks whether a token is a Protected Token
  `String`
  `resolve(String encryptedPassword)`
  Resolved given password using an instance of a PasswordProvider
  `String`
  `resolve(String encryptedPassword, String prompt)`
  Resolved given password using an instance of a PasswordProvider
  `void`
  `shutDown()`
  Shutdown the secret resolver

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### SecretResolver

    public SecretResolver()

- ## Method Details

  - ### init

    public void init(SecretCallbackHandler secretCallbackHandler)
    Initializes by giving an instance of `SecretCallbackHandler` to be used to retrieve secrets
    Parameters:
      `secretCallbackHandler` - `SecretCallbackHandler` instance

  - ### resolve

    public String resolve(String encryptedPassword)
    Resolved given password using an instance of a PasswordProvider
    Parameters:
      `encryptedPassword` - Encrypted password
    Returns:
      resolved password

  - ### resolve

    public String resolve(String encryptedPassword, String prompt)
    Resolved given password using an instance of a PasswordProvider
    Parameters:
      `encryptedPassword` - Encrypted password
      `prompt` - to be used to interact with user
    Returns:
      resolved password

  - ### addProtectedToken

    public void addProtectedToken(String token)
    Registers a token as a Protected Token
    Parameters:
      `token` - `String` representation of a token

  - ### isTokenProtected

    public boolean isTokenProtected(String token)
    Checks whether a token is a Protected Token
    Parameters:
      `token` - `String` representation of a token
    Returns:
      `true` if the token is a Protected Token

  - ### isInitialized

    public boolean isInitialized()
    Checks the state of the rule engine. It is recommended to check state of the this component prior to access any methods of this
    Returns:
      `true`if the rule engine has been initialized``

  - ### shutDown

    public void shutDown()
    Shutdown the secret resolver