Module: Legion::Data::Models
- Extended by:
- Logging::Helper
- Defined in:
- lib/legion/data/model.rb
Class Attribute Summary collapse
-
.loaded_models ⇒ Object
readonly
Returns the value of attribute loaded_models.
Class Method Summary collapse
- .load ⇒ Object
- .load_sequel_model(model) ⇒ Object
- .models ⇒ Object
- .require_sequel_models(files = models) ⇒ Object
Methods included from Logging::Helper
Class Attribute Details
.loaded_models ⇒ Object (readonly)
Returns the value of attribute loaded_models.
11 12 13 |
# File 'lib/legion/data/model.rb', line 11 def loaded_models @loaded_models end |
Class Method Details
.load ⇒ Object
20 21 22 23 24 25 |
# File 'lib/legion/data/model.rb', line 20 def load log.info 'Loading Legion::Data::Models' @loaded_models ||= [] require_sequel_models(models) Legion::Settings[:data][:models][:loaded] = true end |
.load_sequel_model(model) ⇒ Object
32 33 34 35 36 37 38 39 40 41 |
# File 'lib/legion/data/model.rb', line 32 def load_sequel_model(model) log.debug("Trying to load #{model}.rb") require_relative "models/#{model}" @loaded_models << model log.debug("Successfully loaded #{model}") model rescue LoadError => e handle_exception(e, level: :fatal, operation: :load_sequel_model, model: model) raise e unless Legion::Settings[:data][:models][:continue_on_fail] end |
.models ⇒ Object
13 14 15 16 17 18 |
# File 'lib/legion/data/model.rb', line 13 def models %w[extension function relationship chain task runner node setting digital_worker apollo_entry apollo_relation apollo_expertise apollo_access_log audit_log audit_record identity_provider principal identity identity_group identity_group_membership] end |
.require_sequel_models(files = models) ⇒ Object
27 28 29 30 |
# File 'lib/legion/data/model.rb', line 27 def require_sequel_models(files = models) # Dir["#{File.dirname(__FILE__)}models/*.rb"].each { |file| puts file } files.each { |file| load_sequel_model(file) } end |