Class: Google::Apis::PubsubV1::Message

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/pubsub_v1/classes.rb,
generated/google/apis/pubsub_v1/representations.rb,
generated/google/apis/pubsub_v1/representations.rb

Overview

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 for more information. See Quotas and limits for more information about message limits.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Message

Returns a new instance of Message



566
567
568
# File 'generated/google/apis/pubsub_v1/classes.rb', line 566

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#attributesHash<String,String>

Optional attributes for this message. Corresponds to the JSON property attributes

Returns:

  • (Hash<String,String>)


542
543
544
# File 'generated/google/apis/pubsub_v1/classes.rb', line 542

def attributes
  @attributes
end

#dataString

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.

Returns:

  • (String)


549
550
551
# File 'generated/google/apis/pubsub_v1/classes.rb', line 549

def data
  @data
end

#message_idString

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

Returns:

  • (String)


557
558
559
# File 'generated/google/apis/pubsub_v1/classes.rb', line 557

def message_id
  @message_id
end

#publish_timeString

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

Returns:

  • (String)


564
565
566
# File 'generated/google/apis/pubsub_v1/classes.rb', line 564

def publish_time
  @publish_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



571
572
573
574
575
576
# File 'generated/google/apis/pubsub_v1/classes.rb', line 571

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)
  @publish_time = args[:publish_time] if args.key?(:publish_time)
end