Package com.xebialabs.deployit.plugin.api.udm.lookup

## Interface LookupValueProvider

- All Superinterfaces:
    `ConfigurationItem`, `java.io.Serializable`
  All Known Implementing Classes:
    `SimpleLookupValueProvider`

      public interface LookupValueProvider
      extends ConfigurationItem

  CI that can be used to lookup external values.

- - ### Field Summary

    - ### Fields inherited from interface com.xebialabs.deployit.plugin.api.udm.ConfigurationItem

      `SYNTHETIC_PROPERTIES_FIELD, TYPE_FIELD`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default boolean` | `isHealthy()` | Check Lookup Value Provider health
    `java.lang.String` | `lookup​(java.lang.String key, boolean password)` | Lookup an external value by key.

    - ### Methods inherited from interface com.xebialabs.deployit.plugin.api.udm.ConfigurationItem

      `get$directoryReference, get$internalId, get$referenceId, get$securedCi, get$securedDirectoryReference, get$validationMessages, getId, getName, getProperty, getType, hasProperty, setId, setProperty`

- - ### Method Detail

    - #### isHealthy

          default boolean isHealthy()

      Check Lookup Value Provider health
      Returns:
        Health flag

    - #### lookup

          java.lang.String lookup​(java.lang.String key,
                                  boolean password)
                           throws java.lang.Exception

      Lookup an external value by key.
      Parameters:
        `key` - The key to find
        `password` - Whether it is used for a password property.
      Returns:
        The value found
      Throws:
        `java.lang.Exception` - when the lookup cannot be performed or the provider cannot provide a value, e.g. when a secret is requested for a non password field.