Class: Google::Apis::CloudschedulerV1::PubsubMessage
- Inherits:
-
Object
- Object
- Google::Apis::CloudschedulerV1::PubsubMessage
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudscheduler_v1/classes.rb,
lib/google/apis/cloudscheduler_v1/representations.rb,
lib/google/apis/cloudscheduler_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
-
#attributes ⇒ Hash<String,String>
Attributes for this message.
-
#data ⇒ String
The message data field.
-
#message_id ⇒ String
ID of this message, assigned by the server when the message is published.
-
#ordering_key ⇒ String
If non-empty, identifies related messages for which publish order should be respected.
-
#publish_time ⇒ String
The time at which the message was published, populated by the server when it receives the
Publishcall.
Instance Method Summary collapse
-
#initialize(**args) ⇒ PubsubMessage
constructor
A new instance of PubsubMessage.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ PubsubMessage
Returns a new instance of PubsubMessage.
650 651 652 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 650 def initialize(**args) update!(**args) end |
Instance Attribute Details
#attributes ⇒ Hash<String,String>
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
616 617 618 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 616 def attributes @attributes end |
#data ⇒ String
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.
623 624 625 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 623 def data @data end |
#message_id ⇒ String
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
631 632 633 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 631 def @message_id end |
#ordering_key ⇒ String
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 PubsubMessages published in a given PublishRequest must
specify the same ordering_key value.
Corresponds to the JSON property orderingKey
641 642 643 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 641 def ordering_key @ordering_key end |
#publish_time ⇒ String
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
648 649 650 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 648 def publish_time @publish_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
655 656 657 658 659 660 661 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 655 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 |