Class: Google::Api::Context

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/api/context.rb

Overview

Context defines which contexts an API requests.

Example:

context:
  rules:
  - selector: "*"
    requested:
    - google.rpc.context.ProjectContext
    - google.rpc.context.OriginContext

The above specifies that all methods in the API request google.rpc.context.ProjectContext and google.rpc.context.OriginContext.

Available context types are defined in package google.rpc.context.

This also provides mechanism to allowlist any protobuf message extension that can be sent in grpc metadata using “x-goog-ext--bin” and “x-goog-ext--jspb” format. For example, list any service specific protobuf types that can appear in grpc metadata as follows in your yaml file:

Example:

context:
  rules:
   - selector: "google.example.library.v1.LibraryService.CreateBook"
     allowed_request_extensions:
     - google.foo.v1.NewExtension
     allowed_response_extensions:
     - google.foo.v1.NewExtension

You can also specify extension ID instead of fully qualified extension name here.

Instance Attribute Summary collapse

Instance Attribute Details

#rules::Array<::Google::Api::ContextRule>

Returns A list of RPC context rules that apply to individual API methods.

NOTE: All service configuration rules follow "last one wins" order.

Returns:

  • (::Array<::Google::Api::ContextRule>)

    A list of RPC context rules that apply to individual API methods.

    NOTE: All service configuration rules follow "last one wins" order.



63
64
65
66
# File 'proto_docs/google/api/context.rb', line 63

class Context
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods
end