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.



544
545
546
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 544

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


520
521
522
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 520

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)


527
528
529
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 527

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)


535
536
537
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 535

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)


542
543
544
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 542

def publish_time
  @publish_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



549
550
551
552
553
554
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 549

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