Class: JSONModel::Client::EnumSource
- Inherits:
-
Object
- Object
- JSONModel::Client::EnumSource
- Defined in:
- lib/aspace_client/jsonmodel_client.rb
Class Method Summary collapse
Instance Method Summary collapse
- #default_value_for ⇒ Object
-
#initialize ⇒ EnumSource
constructor
A new instance of EnumSource.
- #valid?(name, value) ⇒ Boolean
- #values_for(name) ⇒ Object
Constructor Details
#initialize ⇒ EnumSource
Returns a new instance of EnumSource.
506 507 508 |
# File 'lib/aspace_client/jsonmodel_client.rb', line 506 def initialize @enumerations = self.class.fetch_enumerations end |
Class Method Details
.fetch_enumerations ⇒ Object
494 495 496 497 498 499 500 501 502 503 |
# File 'lib/aspace_client/jsonmodel_client.rb', line 494 def self.fetch_enumerations enumerations = {} enumerations[:defaults] = {} JSONModel::JSONModel(:enumeration).all.each do |enumeration| enumerations[enumeration.name] = enumeration.values enumerations[:defaults][enumeration.name] = enumeration.default_value end enumerations end |
Instance Method Details
#default_value_for ⇒ Object
520 521 522 |
# File 'lib/aspace_client/jsonmodel_client.rb', line 520 def default_value_for @enumerations[:defaults].fetch(name) end |
#valid?(name, value) ⇒ Boolean
511 512 513 |
# File 'lib/aspace_client/jsonmodel_client.rb', line 511 def valid?(name, value) values_for(name).include?(value) end |
#values_for(name) ⇒ Object
516 517 518 |
# File 'lib/aspace_client/jsonmodel_client.rb', line 516 def values_for(name) @enumerations.fetch(name) end |