grpc.framework.interfaces.links package¶
Submodules¶
grpc.framework.interfaces.links.links module¶
The low-level ticket-exchanging-links interface of RPC Framework.
-
class
grpc.framework.interfaces.links.links.
Protocol
[source]¶ Bases:
grpc.framework.interfaces.links.links.Protocol
A sum type for handles to a system that transmits tickets.
-
kind
¶ A Kind value identifying the kind of value being passed.
-
value
¶ The value being passed between the high-level application and the system affording ticket transport.
-
-
class
grpc.framework.interfaces.links.links.
Ticket
[source]¶ Bases:
grpc.framework.interfaces.links.links.Ticket
A sum type for all values sent from a front to a back.
-
operation_id
¶ A unique-with-respect-to-equality hashable object identifying a particular operation.
-
sequence_number
¶ A zero-indexed integer sequence number identifying the ticket’s place in the stream of tickets sent in one direction for the particular operation.
-
group
¶ The group to which the method of the operation belongs. Must be present in the first ticket from invocation side to service side. Ignored for all other tickets exchanged during the operation.
-
method
¶ The name of an operation. Must be present in the first ticket from invocation side to service side. Ignored for all other tickets exchanged during the operation.
-
subscription
¶ A Subscription value describing the interest one side has in receiving information from the other side. Must be present in the first ticket from either side. Ignored for all other tickets exchanged during the operation.
-
timeout
¶ A nonzero length of time (measured from the beginning of the operation) to allow for the entire operation. Must be present in the first ticket from invocation side to service side. Optional for all other tickets exchanged during the operation. Receipt of a value from the other side of the operation indicates the value in use by that side. Setting a value on a later ticket allows either side to request time extensions (or even time reductions!) on in-progress operations.
-
allowance
¶ A positive integer granting permission for a number of payloads to be transmitted to the communicating side of the operation, or None if no additional allowance is being granted with this ticket.
-
initial_metadata
¶ An optional metadata value communicated from one side to the other at the beginning of the operation. May be non-None in at most one ticket from each side. Any non-None value must appear no later than the first payload value.
-
payload
¶ A customer payload object. May be None.
-
terminal_metadata
¶ A metadata value comminicated from one side to the other at the end of the operation. May be non-None in the same ticket as the code and message, but must be None for all earlier tickets.
-
code
¶ A value communicated at operation completion. May be None.
-
message
¶ A value communicated at operation completion. May be None.
-
termination
¶ A Termination value describing the end of the operation, or None if the operation has not yet terminated. If set, no further tickets may be sent in the same direction.
-
protocol
¶ A Protocol value or None, with further semantics being a matter between high-level application and underlying ticket transport.
-
grpc.framework.interfaces.links.utilities module¶
Utilities provided as part of the links interface.