Package com.google.protobuf

# Interface Message

All Superinterfaces:
  `MessageLite`, `MessageLiteOrBuilder`, `MessageOrBuilder`

All Known Implementing Classes:
  `AbstractMessage`, `Any`, `Api`, `BoolValue`, `BytesValue`, `ClientWireProtocol.AttachToQuery`, `ClientWireProtocol.Authenticator`, `ClientWireProtocol.CancelQuery`, `ClientWireProtocol.CancelQueryResponse`, `ClientWireProtocol.ClientConnection`, `ClientWireProtocol.ClientConnection2`, `ClientWireProtocol.ClientConnection2Response`, `ClientWireProtocol.ClientConnectionGCM`, `ClientWireProtocol.ClientConnectionGCM2`, `ClientWireProtocol.ClientConnectionGCM2Response`, `ClientWireProtocol.ClientConnectionGCMResponse`, `ClientWireProtocol.ClientConnectionRefreshSession`, `ClientWireProtocol.ClientConnectionRefreshSessionResponse`, `ClientWireProtocol.ClientConnectionRefreshToken`, `ClientWireProtocol.ClientConnectionRefreshTokenResponse`, `ClientWireProtocol.ClientConnectionResponse`, `ClientWireProtocol.ClientConnectionSecurityToken`, `ClientWireProtocol.ClientConnectionSecurityTokenResponse`, `ClientWireProtocol.ClientConnectionSSO`, `ClientWireProtocol.ClientConnectionSSO2`, `ClientWireProtocol.ClientConnectionSSO2Response`, `ClientWireProtocol.ClientConnectionSSOResponse`, `ClientWireProtocol.CloseConnection`, `ClientWireProtocol.CloseResultSet`, `ClientWireProtocol.ConfirmationResponse`, `ClientWireProtocol.ExecuteExplain`, `ClientWireProtocol.ExecuteExplainForSpark`, `ClientWireProtocol.ExecuteExport`, `ClientWireProtocol.ExecuteExportResponse`, `ClientWireProtocol.ExecuteInlinePlan`, `ClientWireProtocol.ExecutePlan`, `ClientWireProtocol.ExecuteQuery`, `ClientWireProtocol.ExecuteQueryResponse`, `ClientWireProtocol.ExecuteUpdate`, `ClientWireProtocol.ExecuteUpdateResponse`, `ClientWireProtocol.ExplainPipelineRequest`, `ClientWireProtocol.ExplainPipelineResponse`, `ClientWireProtocol.ExplainPlan`, `ClientWireProtocol.ExplainResponseStringPlan`, `ClientWireProtocol.FetchAuthenticators`, `ClientWireProtocol.FetchAuthenticatorsResponse`, `ClientWireProtocol.FetchData`, `ClientWireProtocol.FetchDataResponse`, `ClientWireProtocol.FetchMetadata`, `ClientWireProtocol.FetchMetadataResponse`, `ClientWireProtocol.FetchSystemMetadata`, `ClientWireProtocol.FetchSystemMetadataResponse`, `ClientWireProtocol.ForceExternal`, `ClientWireProtocol.GetSchema`, `ClientWireProtocol.GetSchemaResponse`, `ClientWireProtocol.KillQuery`, `ClientWireProtocol.KillQueryResponse`, `ClientWireProtocol.ListPlan`, `ClientWireProtocol.ListPlanResponse`, `ClientWireProtocol.OpenIDAuthenticator`, `ClientWireProtocol.QueryConcurrencyResponse`, `ClientWireProtocol.Request`, `ClientWireProtocol.ResultSet`, `ClientWireProtocol.SecondaryInterfaceList`, `ClientWireProtocol.SecurityToken`, `ClientWireProtocol.ServerVersion`, `ClientWireProtocol.SessionInfo`, `ClientWireProtocol.SetParameter`, `ClientWireProtocol.SetParameter.Concurrency`, `ClientWireProtocol.SetParameter.ForceExternal`, `ClientWireProtocol.SetParameter.MaxTempDiskLimit`, `ClientWireProtocol.SetParameter.MemoryTracing`, `ClientWireProtocol.SetParameter.Priority`, `ClientWireProtocol.SetParameter.PriorityAdjustFactor`, `ClientWireProtocol.SetParameter.PriorityAdjustTime`, `ClientWireProtocol.SetParameter.ResultSetColumnLimit`, `ClientWireProtocol.SetParameter.RowLimit`, `ClientWireProtocol.SetParameter.ServiceClassName`, `ClientWireProtocol.SetParameter.TimeLimit`, `ClientWireProtocol.SetSchema`, `ClientWireProtocol.TestConnection`, `DescriptorProtos.DescriptorProto`, `DescriptorProtos.DescriptorProto.ExtensionRange`, `DescriptorProtos.DescriptorProto.ReservedRange`, `DescriptorProtos.EnumDescriptorProto`, `DescriptorProtos.EnumDescriptorProto.EnumReservedRange`, `DescriptorProtos.EnumOptions`, `DescriptorProtos.EnumValueDescriptorProto`, `DescriptorProtos.EnumValueOptions`, `DescriptorProtos.ExtensionRangeOptions`, `DescriptorProtos.ExtensionRangeOptions.Declaration`, `DescriptorProtos.FeatureSet`, `DescriptorProtos.FeatureSetDefaults`, `DescriptorProtos.FeatureSetDefaults.FeatureSetEditionDefault`, `DescriptorProtos.FieldDescriptorProto`, `DescriptorProtos.FieldOptions`, `DescriptorProtos.FieldOptions.EditionDefault`, `DescriptorProtos.FieldOptions.FeatureSupport`, `DescriptorProtos.FileDescriptorProto`, `DescriptorProtos.FileDescriptorSet`, `DescriptorProtos.FileOptions`, `DescriptorProtos.GeneratedCodeInfo`, `DescriptorProtos.GeneratedCodeInfo.Annotation`, `DescriptorProtos.MessageOptions`, `DescriptorProtos.MethodDescriptorProto`, `DescriptorProtos.MethodOptions`, `DescriptorProtos.OneofDescriptorProto`, `DescriptorProtos.OneofOptions`, `DescriptorProtos.ServiceDescriptorProto`, `DescriptorProtos.ServiceOptions`, `DescriptorProtos.SourceCodeInfo`, `DescriptorProtos.SourceCodeInfo.Location`, `DescriptorProtos.UninterpretedOption`, `DescriptorProtos.UninterpretedOption.NamePart`, `DoubleValue`, `Duration`, `DynamicMessage`, `Empty`, `Enum`, `EnumValue`, `Field`, `FieldMask`, `FloatValue`, `GeneratedMessage`, `GeneratedMessage.ExtendableMessage`, `GeneratedMessageV3`, `GeneratedMessageV3.ExtendableMessage`, `Int32Value`, `Int64Value`, `JavaFeaturesProto.JavaFeatures`, `ListValue`, `MapEntry`, `Method`, `Mixin`, `Option`, `PluginProtos.CodeGeneratorRequest`, `PluginProtos.CodeGeneratorResponse`, `PluginProtos.CodeGeneratorResponse.File`, `PluginProtos.Version`, `SourceContext`, `StringValue`, `Struct`, `Timestamp`, `Type`, `UInt32Value`, `UInt64Value`, `Value`

@CheckReturnValue public interface Message extends MessageLite, MessageOrBuilder
Abstract interface implemented by Protocol Message objects.

See also `MessageLite`, which defines most of the methods that typical users care about. `Message` adds methods that are not available in the "lite" runtime. The biggest added features are introspection and reflection; that is, getting descriptors for the message type and accessing the field values dynamically.

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static interface`
`Message.Builder`
Abstract interface implemented by Protocol Message builders.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object other)`
Compares the specified object with this message for equality.
`Parser<? extends Message>`
`getParserForType()`
Gets the parser for a message of the same type as this message.
`int`
`hashCode()`
Returns the hash code value for this message.
`Message.Builder`
`newBuilderForType()`
Constructs a new builder for a message of the same type as this message.
`Message.Builder`
`toBuilder()`
Constructs a builder initialized with the current message.
`String`
`toString()`
Converts the message to a string in protocol buffer text format.

### Methods inherited from interface com.google.protobuf.MessageLite

`getSerializedSize, toByteArray, toByteString, writeDelimitedTo, writeTo, writeTo`

### Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

`isInitialized`

### Methods inherited from interface com.google.protobuf.MessageOrBuilder

`findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof`

## Method Details

### getParserForType

Parser<? extends Message> getParserForType()
Description copied from interface: `MessageLite`
Gets the parser for a message of the same type as this message.

Specified by:
  `getParserForType` in interface `MessageLite`

### equals

boolean equals(Object other)
Compares the specified object with this message for equality. Returns `true` if the given object is a message of the same type (as defined by `getDescriptorForType()`) and has identical values for all of its fields. Subclasses must implement this; inheriting `Object.equals()` is incorrect.

Overrides:
  `equals` in class `Object`
Parameters:
  `other` - object to be compared for equality with this message
Returns:
  `true` if the specified object is equal to this message

### hashCode

int hashCode()
Returns the hash code value for this message. The hash code of a message should mix the message's type (object identity of the descriptor) with its contents (known and unknown field values). Subclasses must implement this; inheriting `Object.hashCode()` is incorrect.

Overrides:
  `hashCode` in class `Object`
Returns:
  the hash code value for this message
See Also:
  - `Map.hashCode()`

### toString

String toString()
Converts the message to a string in protocol buffer text format. This is just a trivial wrapper around `TextFormat.Printer.printToString(MessageOrBuilder)`.

Overrides:
  `toString` in class `Object`

### newBuilderForType

Message.Builder newBuilderForType()
Description copied from interface: `MessageLite`
Constructs a new builder for a message of the same type as this message.

Specified by:
  `newBuilderForType` in interface `MessageLite`

### toBuilder

Message.Builder toBuilder()
Description copied from interface: `MessageLite`
Constructs a builder initialized with the current message. Use this to derive a new message from the current one.

Specified by:
  `toBuilder` in interface `MessageLite`