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

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

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)
  • timeframe_end (Time)
  • timeframe_start (Time)


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

Parameters:

  • value (Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric)

Returns:



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>

Parameters:

  • value (::Array[Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage])

Returns:



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

Parameters:

  • value (Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::view_mode)

Returns:



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

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

Instance Method Details

#to_hash{

Returns:

  • ({)


46
# File 'sig/orb/models/subscription_usage.rbs', line 46

def to_hash: -> {