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>
Optional.
-
#data ⇒ String
Optional.
-
#message_id ⇒ String
ID of this message, assigned by the server when the message is published.
-
#ordering_key ⇒ String
Optional.
-
#publish_time ⇒ String
The time at which the message was published, populated by the server when it receives the
Publish
call.
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.
823 824 825 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 823 def initialize(**args) update!(**args) end |
Instance Attribute Details
#attributes ⇒ Hash<String,String>
Optional. 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
788 789 790 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 788 def attributes @attributes end |
#data ⇒ String
Optional. 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.
795 796 797 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 795 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
803 804 805 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 803 def @message_id end |
#ordering_key ⇒ String
Optional. 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 PubsubMessage
s published in a given PublishRequest
must
specify the same ordering_key
value. For more information, see ordering
messages.
Corresponds to the JSON property orderingKey
814 815 816 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 814 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
821 822 823 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 821 def publish_time @publish_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
828 829 830 831 832 833 834 |
# File 'lib/google/apis/cloudscheduler_v1/classes.rb', line 828 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 |