Class: Muding::Configuration
Overview
The Configuration class holds all the parameters for the Initializer and ships with defaults that suites most Muding applications. But it’s possible to overwrite everything. Usually, you’ll create an Configuration file implicitly through the block running on the Initializer, but it’s also possible to create the Configuration instance in advance and pass it in like this:
config = Muding::Configuration.new
Muding::Initializer.run(:process, config)
Instance Attribute Summary collapse
-
#action_controller ⇒ Object
A stub for setting options on ActionController::Base.
-
#action_mailer ⇒ Object
A stub for setting options on ActionMailer::Base.
-
#action_view ⇒ Object
A stub for setting options on ActionView::Base.
-
#action_web_service ⇒ Object
A stub for setting options on ActionWebService::Base.
-
#active_record ⇒ Object
A stub for setting options on ActiveRecord::Base.
-
#breakpoint_server ⇒ Object
Whether or not to use the breakpoint server (boolean).
-
#cache_classes ⇒ Object
Whether or not classes should be cached (set to false if you want application classes to be reloaded on each request).
-
#connection_adapters ⇒ Object
The list of connection adapters to load.
-
#controller_paths ⇒ Object
The list of paths that should be searched for controllers.
-
#database_configuration_file ⇒ Object
The path to the database configuration file to use.
-
#frameworks ⇒ Object
The list of muding framework components that should be loaded.
-
#load_paths ⇒ Object
An array of additional paths to prepend to the load path.
-
#log_level ⇒ Object
The log level to use for the default Muding logger.
-
#log_path ⇒ Object
The path to the log file to use.
-
#logger ⇒ Object
The specific logger to use.
-
#plugin_paths ⇒ Object
The path to the root of the plugins directory.
-
#view_path ⇒ Object
The root of the application’s views.
-
#whiny_nils ⇒ Object
Set to
true
if you want to be warned (noisily) when you try to invoke any method ofnil
.
Instance Method Summary collapse
-
#after_initialize(&after_initialize_block) ⇒ Object
Sets a block which will be executed after muding has been fully initialized.
-
#after_initialize_block ⇒ Object
Returns the block set in Configuration#after_initialize.
-
#database_configuration ⇒ Object
Loads and returns the contents of the #database_configuration_file.
-
#environment ⇒ Object
Return the currently selected environment.
-
#environment_path ⇒ Object
The path to the current environment’s file (development.rb, etc.).
-
#initialize ⇒ Configuration
constructor
Create a new Configuration instance, initialized with the default values.
Constructor Details
#initialize ⇒ Configuration
Create a new Configuration instance, initialized with the default values.
431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 |
# File 'lib/initializer.rb', line 431 def initialize self.frameworks = default_frameworks self.load_paths = default_load_paths self.log_path = default_log_path self.log_level = default_log_level self.view_path = default_view_path self.controller_paths = default_controller_paths self.cache_classes = default_cache_classes self.breakpoint_server = default_breakpoint_server self.whiny_nils = default_whiny_nils self.plugin_paths = default_plugin_paths self.database_configuration_file = default_database_configuration_file for framework in default_frameworks self.send("#{framework}=", OrderedOptions.new) end end |
Instance Attribute Details
#action_controller ⇒ Object
A stub for setting options on ActionController::Base
359 360 361 |
# File 'lib/initializer.rb', line 359 def action_controller @action_controller end |
#action_mailer ⇒ Object
A stub for setting options on ActionMailer::Base
362 363 364 |
# File 'lib/initializer.rb', line 362 def action_mailer @action_mailer end |
#action_view ⇒ Object
A stub for setting options on ActionView::Base
365 366 367 |
# File 'lib/initializer.rb', line 365 def action_view @action_view end |
#action_web_service ⇒ Object
A stub for setting options on ActionWebService::Base
368 369 370 |
# File 'lib/initializer.rb', line 368 def action_web_service @action_web_service end |
#active_record ⇒ Object
A stub for setting options on ActiveRecord::Base
371 372 373 |
# File 'lib/initializer.rb', line 371 def active_record @active_record end |
#breakpoint_server ⇒ Object
Whether or not to use the breakpoint server (boolean)
374 375 376 |
# File 'lib/initializer.rb', line 374 def breakpoint_server @breakpoint_server end |
#cache_classes ⇒ Object
Whether or not classes should be cached (set to false if you want application classes to be reloaded on each request)
378 379 380 |
# File 'lib/initializer.rb', line 378 def cache_classes @cache_classes end |
#connection_adapters ⇒ Object
The list of connection adapters to load. (By default, all connection adapters are loaded. You can set this to be just the adapter(s) you will use to reduce your application’s load time.)
383 384 385 |
# File 'lib/initializer.rb', line 383 def connection_adapters @connection_adapters end |
#controller_paths ⇒ Object
The list of paths that should be searched for controllers. (Defaults to app/controllers
and components
.)
387 388 389 |
# File 'lib/initializer.rb', line 387 def controller_paths @controller_paths end |
#database_configuration_file ⇒ Object
The path to the database configuration file to use. (Defaults to config/database.yml
.)
391 392 393 |
# File 'lib/initializer.rb', line 391 def database_configuration_file @database_configuration_file end |
#frameworks ⇒ Object
The list of muding framework components that should be loaded. (Defaults to :active_record
, :action_controller
, :action_view
, :action_mailer
, and :action_web_service
).
397 398 399 |
# File 'lib/initializer.rb', line 397 def frameworks @frameworks end |
#load_paths ⇒ Object
An array of additional paths to prepend to the load path. By default, all app
, lib
, vendor
and mock paths are included in this list.
401 402 403 |
# File 'lib/initializer.rb', line 401 def load_paths @load_paths end |
#log_level ⇒ Object
The log level to use for the default Muding logger. In production mode, this defaults to :info
. In development mode, it defaults to :debug
.
406 407 408 |
# File 'lib/initializer.rb', line 406 def log_level @log_level end |
#log_path ⇒ Object
The path to the log file to use. Defaults to log/##environment.log (e.g. log/development.log or log/production.log).
410 411 412 |
# File 'lib/initializer.rb', line 410 def log_path @log_path end |
#logger ⇒ Object
The specific logger to use. By default, a logger will be created and initialized using #log_path and #log_level, but a programmer may specifically set the logger to use via this accessor and it will be used directly.
416 417 418 |
# File 'lib/initializer.rb', line 416 def logger @logger end |
#plugin_paths ⇒ Object
The path to the root of the plugins directory. By default, it is in vendor/plugins
.
427 428 429 |
# File 'lib/initializer.rb', line 427 def plugin_paths @plugin_paths end |
#view_path ⇒ Object
The root of the application’s views. (Defaults to app/views
.)
419 420 421 |
# File 'lib/initializer.rb', line 419 def view_path @view_path end |
#whiny_nils ⇒ Object
Set to true
if you want to be warned (noisily) when you try to invoke any method of nil
. Set to false
for the standard Ruby behavior.
423 424 425 |
# File 'lib/initializer.rb', line 423 def whiny_nils @whiny_nils end |
Instance Method Details
#after_initialize(&after_initialize_block) ⇒ Object
Sets a block which will be executed after muding has been fully initialized. Useful for per-environment configuration which depends on the framework being fully initialized.
471 472 473 |
# File 'lib/initializer.rb', line 471 def after_initialize(&after_initialize_block) @after_initialize_block = after_initialize_block end |
#after_initialize_block ⇒ Object
Returns the block set in Configuration#after_initialize
476 477 478 |
# File 'lib/initializer.rb', line 476 def after_initialize_block @after_initialize_block end |
#database_configuration ⇒ Object
Loads and returns the contents of the #database_configuration_file. The contents of the file are processed via ERB before being sent through YAML::load.
452 453 454 |
# File 'lib/initializer.rb', line 452 def database_configuration YAML::load(ERB.new(IO.read(database_configuration_file)).result) end |
#environment ⇒ Object
Return the currently selected environment. By default, it returns the value of the MUDING_ENV
constant.
464 465 466 |
# File 'lib/initializer.rb', line 464 def environment ::MUDING_ENV end |
#environment_path ⇒ Object
The path to the current environment’s file (development.rb, etc.). By default the file is at config/environments/#{environment}.rb
.
458 459 460 |
# File 'lib/initializer.rb', line 458 def environment_path "#{root_path}/config/environments/#{environment}.rb" end |