Class: Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/orb/models/subscription_usage.rb

Defined Under Namespace

Modules: ViewMode Classes: BillableMetric, Usage

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(quantity: , timeframe_end: , timeframe_start: ) ⇒ Object

Parameters:

  • quantity (Float) (defaults to: )
  • timeframe_end (Time) (defaults to: )
  • timeframe_start (Time) (defaults to: )


23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/orb/models/subscription_usage.rb', line 23

class Data < Orb::Internal::Type::BaseModel
  # @!attribute billable_metric
  #
  #   @return [Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric]
  required :billable_metric, -> { Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric }

  # @!attribute usage
  #
  #   @return [Array<Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage>]
  required :usage,
           -> { Orb::Internal::Type::ArrayOf[Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage] }

  # @!attribute view_mode
  #
  #   @return [Symbol, Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::ViewMode]
  required :view_mode, enum: -> { Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::ViewMode }

  # @!method initialize(billable_metric:, usage:, view_mode:)
  #   @param billable_metric [Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric]
  #   @param usage [Array<Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage>]
  #   @param view_mode [Symbol, Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::ViewMode]

  # @see Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data#billable_metric
  class BillableMetric < Orb::Internal::Type::BaseModel
    # @!attribute id
    #
    #   @return [String]
    required :id, String

    # @!attribute name
    #
    #   @return [String]
    required :name, String

    # @!method initialize(id:, name:)
    #   @param id [String]
    #   @param name [String]
  end

  class Usage < Orb::Internal::Type::BaseModel
    # @!attribute quantity
    #
    #   @return [Float]
    required :quantity, Float

    # @!attribute timeframe_end
    #
    #   @return [Time]
    required :timeframe_end, Time

    # @!attribute timeframe_start
    #
    #   @return [Time]
    required :timeframe_start, Time

    # @!method initialize(quantity:, timeframe_end:, timeframe_start:)
    #   @param quantity [Float]
    #   @param timeframe_end [Time]
    #   @param timeframe_start [Time]
  end

  # @see Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data#view_mode
  module ViewMode
    extend Orb::Internal::Type::Enum

    PERIODIC = :periodic
    CUMULATIVE = :cumulative

    # @!method self.values
    #   @return [Array<Symbol>]
  end
end

Instance Attribute Details

#billable_metricOrb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric



27
# File 'lib/orb/models/subscription_usage.rb', line 27

required :billable_metric, -> { Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric }

#usageArray<Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage>



32
33
# File 'lib/orb/models/subscription_usage.rb', line 32

required :usage,
-> { Orb::Internal::Type::ArrayOf[Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage] }

#view_modeSymbol, Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::ViewMode



38
# File 'lib/orb/models/subscription_usage.rb', line 38

required :view_mode, enum: -> { Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::ViewMode }