module PowerStencil::Engine::EntitiesDefinition

Constants

SYSTEM_ENTITY_DEFINITION_ENTRY_POINT

Public Instance Methods

require_definition_files(files_or_dirs, source) click to toggle source
# File lib/power_stencil/engine/entities_definitions.rb, line 12
def require_definition_files(files_or_dirs, source)
  required_files = []
  files_or_dirs.each do |file_or_dir|
    if File.directory? file_or_dir and File.readable? file_or_dir
      Dir.entries(file_or_dir).grep(/\.rb$/).each do |file|
        required_files << File.join(file_or_dir, file)
      end
      next
    end
    if File.file? file_or_dir and File.readable? file_or_dir
      required_files << file_or_dir
      next
    end
    # This is a ruby library or there is something wrong

    # securely_require_with_entity_class_detection file_or_dir, source
    securely_require_with_entity_class_detection(source) do
      securely_require file_or_dir, fail_on_error: true
    end

  end
  required_files.sort!.each do |file|
    securely_require_with_entity_class_detection source do
      securely_require file, fail_on_error: true
    end
  end
  required_files
end

Private Instance Methods

load_system_entities_definition() click to toggle source
# File lib/power_stencil/engine/entities_definitions.rb, line 45
def load_system_entities_definition
  require_definition_files [SYSTEM_ENTITY_DEFINITION_ENTRY_POINT], PowerStencil
end