Class: Google::Apis::PubsubV1beta2::PubsubMessage

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

Overview

A message data and its attributes. The message payload must not be empty; it must contain either a non-empty data field, or at least one attribute.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ PubsubMessage

Returns a new instance of PubsubMessage.



517
518
519
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 517

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>)


493
494
495
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 493

def attributes
  @attributes
end

#dataString

The message payload. For JSON requests, the value of this field must be base64-encoded. Corresponds to the JSON property data NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


500
501
502
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 500

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)


508
509
510
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 508

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)


515
516
517
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 515

def publish_time
  @publish_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



522
523
524
525
526
527
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 522

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