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

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

Overview

Configuration for a push delivery endpoint.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ PushConfig

Returns a new instance of PushConfig.



1605
1606
1607
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1605

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

Instance Attribute Details

#attributesHash<String,String>

Optional. Endpoint configuration attributes that can be used to control different aspects of the message delivery. The only 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). If not present during the CreateSubscription call, it will default to the version of the Pub/Sub API used to make such call. If not present in 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 only supported values for the x-goog-version 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. For example: attributes "x-goog-version": "v1" ` Corresponds to the JSON propertyattributes`

Returns:

  • (Hash<String,String>)


1579
1580
1581
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1579

def attributes
  @attributes
end

#no_wrapperGoogle::Apis::PubsubV1::NoWrapper

Sets the data field as the HTTP body for delivery. Corresponds to the JSON property noWrapper



1584
1585
1586
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1584

def no_wrapper
  @no_wrapper
end

#oidc_tokenGoogle::Apis::PubsubV1::OidcToken

Contains information needed for generating an OpenID Connect token. Corresponds to the JSON property oidcToken



1590
1591
1592
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1590

def oidc_token
  @oidc_token
end

#pubsub_wrapperGoogle::Apis::PubsubV1::PubsubWrapper

The payload to the push endpoint is in the form of the JSON representation of a PubsubMessage (https://cloud.google.com/pubsub/docs/reference/rpc/google. pubsub.v1#pubsubmessage). Corresponds to the JSON property pubsubWrapper



1597
1598
1599
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1597

def pubsub_wrapper
  @pubsub_wrapper
end

#push_endpointString

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


1603
1604
1605
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1603

def push_endpoint
  @push_endpoint
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1610
1611
1612
1613
1614
1615
1616
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1610

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