Class ResourceReference (2.15.0)

public sealed class ResourceReference : IMessage<ResourceReference>, IEquatable<ResourceReference>, IDeepCloneable<ResourceReference>, IBufferMessage, IMessage

Defines a proto annotation that describes a string field that refers to an API resource.

Inheritance

object > ResourceReference

Namespace

Google.Api

Assembly

Google.Api.CommonProtos.dll

Constructors

ResourceReference()

public ResourceReference()

ResourceReference(ResourceReference)

public ResourceReference(ResourceReference other)
Parameter
Name Description
other ResourceReference

Fields

ChildTypeFieldNumber

public const int ChildTypeFieldNumber = 2

Field number for the "child_type" field.

Field Value
Type Description
int

TypeFieldNumber

public const int TypeFieldNumber = 1

Field number for the "type" field.

Field Value
Type Description
int

Properties

ChildType

public string ChildType { get; set; }

The resource type of a child collection that the annotated field references. This is useful for annotating the parent field that doesn't have a fixed resource type.

Example:

message ListLogEntriesRequest {
  string parent = 1 [(google.api.resource_reference) = {
    child_type: "logging.googleapis.com/LogEntry"
  };
}
Property Value
Type Description
string

Descriptor

public static MessageDescriptor Descriptor { get; }
Property Value
Type Description
MessageDescriptor

Parser

public static MessageParser<ResourceReference> Parser { get; }
Property Value
Type Description
MessageParserResourceReference

Type

public string Type { get; set; }

The resource type that the annotated field references.

Example:

message Subscription {
  string topic = 2 [(google.api.resource_reference) = {
    type: "pubsub.googleapis.com/Topic"
  }];
}

Occasionally, a field may reference an arbitrary resource. In this case, APIs use the special value * in their resource reference.

Example:

message GetIamPolicyRequest {
  string resource = 2 [(google.api.resource_reference) = {
    type: "*"
  }];
}
Property Value
Type Description
string

Methods

CalculateSize()

public int CalculateSize()

Calculates the size of this message in Protocol Buffer wire format, in bytes.

Returns
Type Description
int

The number of bytes required to write this message to a coded output stream.

Clone()

public ResourceReference Clone()

Creates a deep clone of this object.

Returns
Type Description
ResourceReference

A deep clone of this object.

Equals(ResourceReference)

public bool Equals(ResourceReference other)
Parameter
Name Description
other ResourceReference
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(ResourceReference)

public void MergeFrom(ResourceReference other)

Merges the given message into this one.

Parameter
Name Description
other ResourceReference
Remarks

See the user guide for precise merge semantics.

MergeFrom(CodedInputStream)

public void MergeFrom(CodedInputStream input)

Merges the data from the specified coded input stream with the current message.

Parameter
Name Description
input CodedInputStream
Remarks

See the user guide for precise merge semantics.

ToString()

public override string ToString()
Returns
Type Description
string
Overrides

WriteTo(CodedOutputStream)

public void WriteTo(CodedOutputStream output)

Writes the data to the given coded output stream.

Parameter
Name Description
output CodedOutputStream

Coded output stream to write the data to. Must not be null.