Class Context (2.17.0)
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 2025-10-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-10-10 UTC."],[],[]]