module Heel::Configuration
Configuration
module used by all the other modules and classes for determining paths and default values.
Constants
- HOMEPAGE
Public Class Methods
returns:: [String] The full expanded path of the config
directory below root_dir. All parameters passed in are joined onto the result. Trailing File::SEPARATOR is guaranteed if args are not present.
# File lib/heel/configuration.rb, line 32 def self.config_path(*args) self.sub_path("config", *args) end
returns:: [String] The full expanded path of the data
directory below root_dir. All parameters passed in are joined onto the result. Trailing File::SEPARATOR is guaranteed if _*args_ are not present.
# File lib/heel/configuration.rb, line 41 def self.data_path(*args) self.sub_path("data", *args) end
returns:: [String] The full expanded path of the lib
directory below root_dir. All parameters passed in are joined onto the result. Trailing File::SEPARATOR is guaranteed if _*args_ are not present.
# File lib/heel/configuration.rb, line 50 def self.lib_path(*args) self.sub_path("lib", *args) end
The root directory of the project is considered to be the parent directory of the 'lib' directory.
returns:: [String] The full expanded path of the parent directory of 'lib' going up the path from the current file. Trailing File::SEPARATOR is guaranteed.
# File lib/heel/configuration.rb, line 20 def self.root_dir path_parts = ::File.expand_path(__FILE__).split(::File::SEPARATOR) lib_index = path_parts.rindex("lib") root_dir = path_parts[0...lib_index].join(::File::SEPARATOR) + ::File::SEPARATOR return root_dir end
Private Class Methods
# File lib/heel/configuration.rb, line 57 def self.sub_path(sub,*args) sp = ::File.join(root_dir, sub) + File::SEPARATOR sp = ::File.join(sp, *args) if args end