Module: RackWarden
- Defined in:
- lib/rack_warden/app.rb,
lib/rack_warden.rb,
lib/rack_warden.rb,
lib/rack_warden/models.rb,
lib/rack_warden/routes.rb,
lib/rack_warden/warden.rb,
lib/rack_warden/helpers.rb,
lib/rack_warden/version.rb,
lib/rack_warden/frameworks.rb,
lib/rack_warden/models/user.rb,
lib/rack_warden/frameworks/rails.rb,
lib/rack_warden/frameworks/sinatra.rb
Overview
Setup the database connection, schema, etc.
Defined Under Namespace
Modules: Frameworks, RackWardenHelpers, Routes, UniversalHelpers, WardenConfig Classes: App, User
Constant Summary collapse
- PATH =
Incase you are using this library without the gem loaded.
File.(File.dirname(__FILE__))
- VERSION =
"0.0.9"
Class Method Summary collapse
-
.get_database_config ⇒ Object
Best guess at framework database settings.
- .included(base) ⇒ Object
-
.middleware_classes(app = nil) ⇒ Object
Utility to get middleware stack.
-
.new(*args) ⇒ Object
Make this module a pseudo-class appropriate for middlware stack.
-
.settings ⇒ Object
Shortcut/sugar to app.
Class Method Details
.get_database_config ⇒ Object
Best guess at framework database settings.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/rack_warden/models.rb', line 5 def self.get_database_config #puts ActiveRecord::Base.configurations[(RackWarden::App.environment || :development).to_s].to_yaml #conf = case case when App.database_config.to_s.downcase == 'file'; "sqlite3:///#{Dir.pwd}/rack_warden.sqlite3.db" when App.database_config.to_s.downcase == 'auto'; (ActiveRecord::Base.connection_config rescue nil) || (ActiveRecord::Base.configurations[(RackWarden::App.environment || :development).to_s] rescue nil) || (DataMapper.repository(:default).adapter[:options] rescue nil) || App.database_default when App.database_config; App.database_config else App.database_default end #... sort out environment HERE #conf = RackWarden::App.environment || :development).to_s end |
.included(base) ⇒ Object
52 53 54 55 |
# File 'lib/rack_warden.rb', line 52 def self.included(base) puts "RW self.included into BASE #{base}, ID #{base.object_id}" App.new base end |
.middleware_classes(app = nil) ⇒ Object
Utility to get middleware stack. Maybe temporary.
37 38 39 40 41 42 43 |
# File 'lib/rack_warden.rb', line 37 def self.middleware_classes(app=nil) r = [app || Rack::Builder.parse_file(File.join(Dir.pwd, 'config.ru')).first] while ((next_app = r.last.instance_variable_get(:@app)) != nil) r << next_app end r.map{|e| e.instance_variable_defined?(:@app) ? e.class : e } end |
.new(*args) ⇒ Object
Make this module a pseudo-class appropriate for middlware stack. Use RackWarden for older rails apps (rather than ‘RackWarden::App’)
31 32 33 |
# File 'lib/rack_warden.rb', line 31 def self.new(*args) App.new(*args) end |
.settings ⇒ Object
Shortcut/sugar to app
48 49 50 |
# File 'lib/rack_warden.rb', line 48 def self.settings App.settings end |