Class Context (2.17.0)
Stay organized with collections
Save and categorize content based on your preferences.
Version latestkeyboard_arrow_down
public sealed class Context : IMessage<Context>, IEquatable<Context>, IDeepCloneable<Context>, IBufferMessage, IMessage
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-<extension_id>-bin” and
“x-goog-ext-<extension_id>-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.
Namespace
Google.Api
Assembly
Google.Api.CommonProtos.dll
Constructors
Context()
Context(Context)
public Context(Context other)
Parameter
Name
Description
other
Context
Fields
RulesFieldNumber
public const int RulesFieldNumber = 1
Field number for the "rules" field.
Field Value
Type
Description
int
Properties
Descriptor
public static MessageDescriptor Descriptor { get; }
Parser
public static MessageParser<Context> Parser { get; }
Rules
public RepeatedField<ContextRule> Rules { get; }
A list of RPC context rules that apply to individual API methods.
NOTE: All service configuration rules follow "last one wins" order.
Methods
CalculateSize()
public int CalculateSize()
Returns
Type
Description
int
Clone()
Equals(Context)
public bool Equals(Context other)
Parameter
Name
Description
other
Context
Returns
Type
Description
bool
Equals(object)
public override bool Equals(object other)
Parameter
Name
Description
other
object
Returns
Type
Description
bool
Overrides
GetHashCode()
public override int GetHashCode()
Returns
Type
Description
int
Overrides
MergeFrom(Context)
public void MergeFrom(Context other)
Parameter
Name
Description
other
Context
MergeFrom(CodedInputStream)
public void MergeFrom(CodedInputStream input)
ToString()
public override string ToString()
Returns
Type
Description
string
Overrides
WriteTo(CodedOutputStream)
public void WriteTo(CodedOutputStream output)
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-03-09 UTC.
[null,null,["Last updated 2026-03-09 UTC."],[],[]]