Class: Google::Apis::PubsubV1::PushConfig

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

Overview

Configuration for a push delivery endpoint.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ PushConfig

Returns a new instance of PushConfig



662
663
664
# File 'generated/google/apis/pubsub_v1/classes.rb', line 662

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#attributesHash<String,String>

Endpoint configuration attributes. Every endpoint has a set of API supported attributes that can be used to control different aspects of the message delivery. The currently supported attribute is x-goog-version, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata). The endpoint version is based on the version of the Pub/Sub API. If not present during the CreateSubscription call, it will default to the version of the API used to make such call. If not present during a ModifyPushConfig call, its value will not be changed. GetSubscription calls will always return a valid version, even if the subscription was created without this attribute. The possible values for this attribute are:

  • v1beta1: uses the push format defined in the v1beta1 Pub/Sub API.
  • v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API. Corresponds to the JSON property attributes

Returns:

  • (Hash<String,String>)


654
655
656
# File 'generated/google/apis/pubsub_v1/classes.rb', line 654

def attributes
  @attributes
end

#push_endpointString

A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use "https://example.com/push". Corresponds to the JSON property pushEndpoint

Returns:

  • (String)


660
661
662
# File 'generated/google/apis/pubsub_v1/classes.rb', line 660

def push_endpoint
  @push_endpoint
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



667
668
669
670
# File 'generated/google/apis/pubsub_v1/classes.rb', line 667

def update!(**args)
  @attributes = args[:attributes] if args.key?(:attributes)
  @push_endpoint = args[:push_endpoint] if args.key?(:push_endpoint)
end