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.



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

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



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

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



2217
2218
2219
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2217

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



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

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



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

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)


2240
2241
2242
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2240

def rebilling_basis
  @rebilling_basis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2247
2248
2249
2250
2251
2252
2253
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2247

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