net.corda.core.node.services

## Class VaultService.DefaultImpls

- net.corda.core.node.services.VaultService.DefaultImpls

- Enclosing interface:
    VaultService

      public static class VaultService.DefaultImpls

  A `interface VaultService` is responsible for securely and safely persisting the current state of a vault to storage. The vault service vends immutable snapshots of the current vault for working with: if you build a transaction based on a vault that isn't current, be aware that it may end up being invalid if the states that were used have been consumed by someone else first!

  Note that transactions we've seen are held by the storage service, not the vault.

  See Also:
    `interface VaultService`

- - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `notify(VaultService $this, WireTransaction tx)` Same as notifyAll but with a single transaction.
    `static com.google.common.util.concurrent.ListenableFuture<net.corda.core.node.services.Vault.Update>` | `whenConsumed(VaultService $this, StateRef ref)` Provide a Future for when a `class StateRef` is consumed, which can be very useful in building tests.

- - ### Method Detail

    - #### notify

          public static void notify(VaultService $this,
                                    WireTransaction tx)

      Same as notifyAll but with a single transaction.

    - #### whenConsumed

          public static com.google.common.util.concurrent.ListenableFuture<net.corda.core.node.services.Vault.Update> whenConsumed(VaultService $this,
                                                                                                                                   StateRef ref)

      Provide a Future for when a `class StateRef` is consumed, which can be very useful in building tests.

      See Also:
        Future, `class StateRef`