Class: Metronome::AgingStrategy

Inherits:
Object
  • Object
show all
Defined in:
lib/metronome/models/aging_strategy.rb

Constant Summary collapse

FIRST_READ_OR_WRITE =
"since-first-read-or-write".freeze
LAST_READ_OR_WRITE =
"since-last-read-or-write".freeze

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.all_varsObject



21
22
23
# File 'lib/metronome/models/aging_strategy.rb', line 21

def self.all_vars
  @all_vars ||= [FIRST_READ_OR_WRITE, LAST_READ_OR_WRITE].freeze
end

.build_from_hash(value) ⇒ String

Builds the enum from string

Parameters:

  • The (String)

    enum value in the form of the string

Returns:

  • (String)

    The enum value



28
29
30
# File 'lib/metronome/models/aging_strategy.rb', line 28

def self.build_from_hash(value)
  new.build_from_hash(value)
end

Instance Method Details

#build_from_hash(value) ⇒ String

Builds the enum from string

Parameters:

  • The (String)

    enum value in the form of the string

Returns:

  • (String)

    The enum value



35
36
37
38
# File 'lib/metronome/models/aging_strategy.rb', line 35

def build_from_hash(value)
  return value if AgingStrategy.all_vars.include?(value)
  raise "Invalid ENUM value #{value} for class #AgingStrategy"
end