[][src]Crate exonum_middleware_service

Middleware service providing ways to compose transactions from the simpler building blocks.

Functionality overview

Transaction batching

Batching allows to atomically execute several transactions; if an error occurs during execution, changes made by all transactions are rolled back. All transactions in the batch are authorized in the same way as the batch itself.

Checked call

Checked call is a way to ensure that the called service corresponds to a specific artifact with an expected version range. Unlike alternatives (e.g., finding out this information via the services endpoint of the node HTTP API), using checked calls is most failsafe; by design, it cannot suffer from TOCTOU issues. It does impose a certain overhead on the execution, though.

Modules

proto

Module of the rust-protobuf generated files.

Structs

ArtifactReq

A wrapper around an artifact requirement.

Batch

Transactions executed in a batch.

CheckedCall

Checked call to the service.

MiddlewareService

Middleware service.

Enums

Error

Errors of the MiddlewareService.

Traits

MiddlewareInterface

Transactional interface of the utilities service.

MiddlewareInterfaceMut

Transactional interface of the utilities service.