lib/rage-rb.rb in rage-rb-1.7.0 vs lib/rage-rb.rb in rage-rb-1.8.0
- old
+ new
@@ -5,31 +5,21 @@
require "iodine"
require "pathname"
module Rage
def self.application
- app = Application.new(__router)
-
- config.middleware.middlewares.reverse.inject(app) do |next_in_chain, (middleware, args, block)|
- # in Rails compatibility mode we first check if the middleware is a part of the Rails middleware stack;
- # if it is - it is expected to be built using `ActionDispatch::MiddlewareStack::Middleware#build`
- if Rage.config.internal.rails_mode
- rails_middleware = Rails.application.config.middleware.middlewares.find { |m| m.name == middleware.name }
- end
-
- if rails_middleware
- rails_middleware.build(next_in_chain)
- else
- middleware.new(next_in_chain, *args, &block)
- end
- end
+ with_middlewares(Application.new(__router), config.middleware.middlewares)
end
def self.multi_application
Rage::Router::Util::Cascade.new(application, Rails.application)
end
+ def self.cable
+ Rage::Cable
+ end
+
def self.routes
Rage::Router::DSL.new(__router)
end
def self.__router
@@ -88,10 +78,27 @@
else
patch.call
end
end
+ # @private
+ def self.with_middlewares(app, middlewares)
+ middlewares.reverse.inject(app) do |next_in_chain, (middleware, args, block)|
+ # in Rails compatibility mode we first check if the middleware is a part of the Rails middleware stack;
+ # if it is - it is expected to be built using `ActionDispatch::MiddlewareStack::Middleware#build`
+ if Rage.config.internal.rails_mode
+ rails_middleware = Rails.application.config.middleware.middlewares.find { |m| m.name == middleware.name }
+ end
+
+ if rails_middleware
+ rails_middleware.build(next_in_chain)
+ else
+ middleware.new(next_in_chain, *args, &block)
+ end
+ end
+ end
+
module Router
module Strategies
end
module DSLPlugins
@@ -104,9 +111,10 @@
end
end
autoload :Cookies, "rage/cookies"
autoload :Session, "rage/session"
+ autoload :Cable, "rage/cable/cable"
end
module RageController
end