Class ErrorInfo (2.40.0)

public final class ErrorInfo extends GeneratedMessageV3 implements ErrorInfoOrBuilder

Describes the cause of the error with structured details.

Example of an error when contacting the "pubsub.googleapis.com" API when it is not enabled:

 { "reason": "API_DISABLED"
   "domain": "googleapis.com"
   "metadata": {
     "resource": "projects/123",
     "service": "pubsub.googleapis.com"
   }
 }

This response indicates that the pubsub.googleapis.com API is not enabled.

Example of an error that is returned when attempting to create a Spanner instance in a region that is out of stock:

 { "reason": "STOCKOUT"
   "domain": "spanner.googleapis.com",
   "metadata": {
     "availableRegions": "us-central1,us-east2"
   }
 }

Protobuf type google.rpc.ErrorInfo

Implements

ErrorInfoOrBuilder

Static Fields

DOMAIN_FIELD_NUMBER

public static final int DOMAIN_FIELD_NUMBER
Field Value
Type Description
int

METADATA_FIELD_NUMBER

public static final int METADATA_FIELD_NUMBER
Field Value
Type Description
int

REASON_FIELD_NUMBER

public static final int REASON_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static ErrorInfo getDefaultInstance()
Returns
Type Description
ErrorInfo

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

newBuilder()

public static ErrorInfo.Builder newBuilder()
Returns
Type Description
ErrorInfo.Builder

newBuilder(ErrorInfo prototype)

public static ErrorInfo.Builder newBuilder(ErrorInfo prototype)
Parameter
Name Description
prototype ErrorInfo
Returns
Type Description
ErrorInfo.Builder

parseDelimitedFrom(InputStream input)

public static ErrorInfo parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
ErrorInfo
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static ErrorInfo parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ErrorInfo
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static ErrorInfo parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
ErrorInfo
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static ErrorInfo parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ErrorInfo
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static ErrorInfo parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
ErrorInfo
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static ErrorInfo parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ErrorInfo
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static ErrorInfo parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
ErrorInfo
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static ErrorInfo parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ErrorInfo
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static ErrorInfo parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
ErrorInfo
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static ErrorInfo parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ErrorInfo
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static ErrorInfo parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
ErrorInfo
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static ErrorInfo parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ErrorInfo
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<ErrorInfo> parser()
Returns
Type Description
Parser<ErrorInfo>

Methods

containsMetadata(String key)

public boolean containsMetadata(String key)

Additional structured details about this error.

Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {"instanceLimit": "100/request"}, should be returned as, {"instanceLimitPerRequest": "100"}, if the client exceeds the number of instances that can be created in a single (batch) request.

map<string, string> metadata = 3;

Parameter
Name Description
key String
Returns
Type Description
boolean

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getDefaultInstanceForType()

public ErrorInfo getDefaultInstanceForType()
Returns
Type Description
ErrorInfo

getDomain()

public String getDomain()

The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com". If the error is generated by some common infrastructure, the error domain must be a globally unique value that identifies the infrastructure. For Google API infrastructure, the error domain is "googleapis.com".

string domain = 2;

Returns
Type Description
String

The domain.

getDomainBytes()

public ByteString getDomainBytes()

The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com". If the error is generated by some common infrastructure, the error domain must be a globally unique value that identifies the infrastructure. For Google API infrastructure, the error domain is "googleapis.com".

string domain = 2;

Returns
Type Description
ByteString

The bytes for domain.

getMetadata() (deprecated)

public Map<String,String> getMetadata()

Use #getMetadataMap() instead.

Returns
Type Description
Map<String,String>

getMetadataCount()

public int getMetadataCount()

Additional structured details about this error.

Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {"instanceLimit": "100/request"}, should be returned as, {"instanceLimitPerRequest": "100"}, if the client exceeds the number of instances that can be created in a single (batch) request.

map<string, string> metadata = 3;

Returns
Type Description
int

getMetadataMap()

public Map<String,String> getMetadataMap()

Additional structured details about this error.

Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {"instanceLimit": "100/request"}, should be returned as, {"instanceLimitPerRequest": "100"}, if the client exceeds the number of instances that can be created in a single (batch) request.

map<string, string> metadata = 3;

Returns
Type Description
Map<String,String>

getMetadataOrDefault(String key, String defaultValue)

public String getMetadataOrDefault(String key, String defaultValue)

Additional structured details about this error.

Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {"instanceLimit": "100/request"}, should be returned as, {"instanceLimitPerRequest": "100"}, if the client exceeds the number of instances that can be created in a single (batch) request.

map<string, string> metadata = 3;

Parameters
Name Description
key String
defaultValue String
Returns
Type Description
String

getMetadataOrThrow(String key)

public String getMetadataOrThrow(String key)

Additional structured details about this error.

Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {"instanceLimit": "100/request"}, should be returned as, {"instanceLimitPerRequest": "100"}, if the client exceeds the number of instances that can be created in a single (batch) request.

map<string, string> metadata = 3;

Parameter
Name Description
key String
Returns
Type Description
String

getParserForType()

public Parser<ErrorInfo> getParserForType()
Returns
Type Description
Parser<ErrorInfo>
Overrides

getReason()

public String getReason()

The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors. This should be at most 63 characters and match a regular expression of A-Z+[A-Z0-9], which represents UPPER_SNAKE_CASE.

string reason = 1;

Returns
Type Description
String

The reason.

getReasonBytes()

public ByteString getReasonBytes()

The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors. This should be at most 63 characters and match a regular expression of A-Z+[A-Z0-9], which represents UPPER_SNAKE_CASE.

string reason = 1;

Returns
Type Description
ByteString

The bytes for reason.

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

internalGetMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public ErrorInfo.Builder newBuilderForType()
Returns
Type Description
ErrorInfo.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected ErrorInfo.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
ErrorInfo.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public ErrorInfo.Builder toBuilder()
Returns
Type Description
ErrorInfo.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException