Class: Google::Apis::ServiceusageV1::Usage

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

Overview

Configuration controlling usage of a service.

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

Returns a new instance of Usage.



4163
4164
4165
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 4163

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

Instance Attribute Details

#producer_notification_channelString

The full resource name of a channel used for sending notifications to the service producer. Google Service Management currently only supports Google Cloud Pub/Sub as a notification channel. To use Google Cloud Pub/Sub as the channel, this must be the name of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format documented in https://cloud.google.com/pubsub/docs/overview. Corresponds to the JSON property producerNotificationChannel

Returns:

  • (String)


4136
4137
4138
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 4136

def producer_notification_channel
  @producer_notification_channel
end

#requirementsArray<String>

Requirements that must be satisfied before a consumer project can use the service. Each requirement is of the form /; for example 'serviceusage.googleapis.com/billing-enabled'. Corresponds to the JSON property requirements

Returns:

  • (Array<String>)


4143
4144
4145
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 4143

def requirements
  @requirements
end

#rulesArray<Google::Apis::ServiceusageV1::UsageRule>

A list of usage rules that apply to individual API methods. NOTE: All service configuration rules follow "last one wins" order. Corresponds to the JSON property rules



4149
4150
4151
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 4149

def rules
  @rules
end

#service_identityGoogle::Apis::ServiceusageV1::GoogleApiServiceIdentity

The per-product per-project service identity for a service. Use this field to configure per-product per-project service identity. Example of a service identity configuration. usage: service_identity:

  • service_account_parent: "projects/123456789" display_name: "Cloud XXX Service Agent" description: "Used as the identity of Cloud XXX to access resources" Corresponds to the JSON property serviceIdentity


4161
4162
4163
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 4161

def service_identity
  @service_identity
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4168
4169
4170
4171
4172
4173
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 4168

def update!(**args)
  @producer_notification_channel = args[:producer_notification_channel] if args.key?(:producer_notification_channel)
  @requirements = args[:requirements] if args.key?(:requirements)
  @rules = args[:rules] if args.key?(:rules)
  @service_identity = args[:service_identity] if args.key?(:service_identity)
end