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.



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

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


491
492
493
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 491

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)


498
499
500
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 498

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)


506
507
508
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 506

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)


513
514
515
# File 'lib/google/apis/pubsub_v1beta2/classes.rb', line 513

def publish_time
  @publish_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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