Class: Google::Apis::CloudchannelV1::GoogleCloudChannelV1RepricingConfig

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

Overview

Configuration for repricing a Google bill over a period of time.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudChannelV1RepricingConfig

Returns a new instance of GoogleCloudChannelV1RepricingConfig.



2237
2238
2239
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2237

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

Instance Attribute Details

#adjustmentGoogle::Apis::CloudchannelV1::GoogleCloudChannelV1RepricingAdjustment

A type that represents the various adjustments you can apply to a bill. Corresponds to the JSON property adjustment



2206
2207
2208
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2206

def adjustment
  @adjustment
end

#channel_partner_granularityGoogle::Apis::CloudchannelV1::GoogleCloudChannelV1RepricingConfigChannelPartnerGranularity

Applies the repricing configuration at the channel partner level. The channel partner value is derived from the resource name. Takes an empty json object. Corresponds to the JSON property channelPartnerGranularity



2212
2213
2214
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2212

def channel_partner_granularity
  @channel_partner_granularity
end

#effective_invoice_monthGoogle::Apis::CloudchannelV1::GoogleTypeDate

Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type. TimeOfDay * google.type.DateTime * google.protobuf.Timestamp Corresponds to the JSON property effectiveInvoiceMonth



2224
2225
2226
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2224

def effective_invoice_month
  @effective_invoice_month
end

#entitlement_granularityGoogle::Apis::CloudchannelV1::GoogleCloudChannelV1RepricingConfigEntitlementGranularity

Applies the repricing configuration at the entitlement level. Corresponds to the JSON property entitlementGranularity



2229
2230
2231
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2229

def entitlement_granularity
  @entitlement_granularity
end

#rebilling_basisString

Required. The RebillingBasis to use for this bill. Specifies the relative cost based on repricing costs you will apply. Corresponds to the JSON property rebillingBasis

Returns:

  • (String)


2235
2236
2237
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2235

def rebilling_basis
  @rebilling_basis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2242
2243
2244
2245
2246
2247
2248
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2242

def update!(**args)
  @adjustment = args[:adjustment] if args.key?(:adjustment)
  @channel_partner_granularity = args[:channel_partner_granularity] if args.key?(:channel_partner_granularity)
  @effective_invoice_month = args[:effective_invoice_month] if args.key?(:effective_invoice_month)
  @entitlement_granularity = args[:entitlement_granularity] if args.key?(:entitlement_granularity)
  @rebilling_basis = args[:rebilling_basis] if args.key?(:rebilling_basis)
end