class Google::Apis::CloudschedulerV1beta1::PubsubMessage

A message that is published by publishers and consumed by subscribers. The message must contain either a non-empty data field or at least one attribute. Note that client libraries represent this object differently depending on the language. See the corresponding [client library documentation](cloud. google.com/pubsub/docs/reference/libraries) for more information. See [quotas and limits] (cloud.google.com/pubsub/quotas) for more information about message limits.

Attributes

attributes[RW]

Attributes for this message. If this field is empty, the message must contain non-empty data. This can be used to filter messages on the subscription. Corresponds to the JSON property `attributes` @return [Hash<String,String>]

data[RW]

The message data field. If this field is empty, the message must contain at least one attribute. Corresponds to the JSON property `data` NOTE: Values are automatically base64 encoded/decoded in the client library. @return [String]

message_id[RW]

ID of this message, assigned by the server when the message is published. Guaranteed to be unique within the topic. This value may be read by a subscriber that receives a `PubsubMessage` via a `Pull` call or a push delivery. It must not be populated by the publisher in a `Publish` call. Corresponds to the JSON property `messageId` @return [String]

ordering_key[RW]

If non-empty, identifies related messages for which publish order should be respected. If a `Subscription` has `enable_message_ordering` set to `true`, messages published with the same non-empty `ordering_key` value will be delivered to subscribers in the order in which they are received by the Pub/ Sub system. All `PubsubMessage`s published in a given `PublishRequest` must specify the same `ordering_key` value. Corresponds to the JSON property `orderingKey` @return [String]

publish_time[RW]

The time at which the message was published, populated by the server when it receives the `Publish` call. It must not be populated by the publisher in a ` Publish` call. Corresponds to the JSON property `publishTime` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/cloudscheduler_v1beta1/classes.rb, line 654
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/cloudscheduler_v1beta1/classes.rb, line 659
def update!(**args)
  @attributes = args[:attributes] if args.key?(:attributes)
  @data = args[:data] if args.key?(:data)
  @message_id = args[:message_id] if args.key?(:message_id)
  @ordering_key = args[:ordering_key] if args.key?(:ordering_key)
  @publish_time = args[:publish_time] if args.key?(:publish_time)
end