package wire.federator

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service Inward

router.proto:102

'Inward' is exposed to the public internet (via nginx) and serves as a forwarding service within its own private network Example: 'federator' will use Inward.call on federator.another-domain to talk to a component inside the group of servers of another-domain which is not directly accessible.

service Outward

router.proto:92

The federator actually listens on two ports and exposes two services: 'Outward' is only accessible from within the private network and serves as a forwarding service to other backends. Example: 'brig' will use Outward.call on an internal server on 127.0.0.1:8097 to (indirectly) talk to the federated world.

enum Component

router.proto:14

Used in: Request

message InwardError

router.proto:52

Used in: InwardResponse, OutwardResponse

enum InwardError.ErrorType

router.proto:53

Used in: InwardError

message OutwardError

router.proto:34

Used in: OutwardResponse

enum OutwardError.ErrorType

router.proto:35

Used in: OutwardError

message Request

router.proto:78

The request message is not a high-level protocol of federation. Instead, it allows encoding more-or-less arbitrary HTTP requests. The idea is to separate the concern of discovery and routing (federator's domain) from the concern of actual API routes available in a federated context (those are currently specified within each component. This may change in the future, however). FUTUREWORK(Akshay): detail the design thoughts behind this type a bit more

Used as request type in: Inward.call

Used as field type in: FederatedRequest