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.



2656
2657
2658
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2656

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



2625
2626
2627
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2625

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



2631
2632
2633
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2631

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



2643
2644
2645
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2643

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



2648
2649
2650
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2648

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)


2654
2655
2656
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2654

def rebilling_basis
  @rebilling_basis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2661
2662
2663
2664
2665
2666
2667
# File 'lib/google/apis/cloudchannel_v1/classes.rb', line 2661

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