diplomat v0.9.3 Diplomat.Transaction

Transaction.begin
|> Transaction.save(entity)
|> Transaction.save(entity2)
|> Transaction.commit

OR

Transaction.begin fn t ->
  # auto-begin
  t
  |> Transaction.save(entity)
  |> Transaction.save(entity2)
  # auto-commits on exit
end

Link to this section Summary

Link to this section Types

Link to this type t()
t() :: %Diplomat.Transaction{id: integer, mutations: [Diplomat.Entity.mutation], state: :init | :begun}

Link to this section Functions

Link to this function begin(block)
begin((() -> t)) ::
  {:ok, Diplomat.Proto.CommitResponse.t} |
  Diplomat.Client.error |
  {:error, any}
Link to this function commit(transaction)
commit(t) ::
  {:ok, Diplomat.Proto.CommitResponse.t} |
  Diplomat.Client.error
Link to this function from_begin_response(begin_transaction_response)
from_begin_response(Diplomat.Proto.BeginTransactionResponse.t) :: t
Link to this function rollback(transaction)
rollback(t) ::
  {:ok, Diplomat.Proto.RollbackResponse.t} |
  Diplomat.Client.error
Link to this function to_commit_proto(transaction)
to_commit_proto(t) :: Diplomat.Proto.CommitRequest.t