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.



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

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



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

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



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

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



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

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



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

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)


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

def rebilling_basis
  @rebilling_basis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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