Class: Lackie::Rack::Middleware
- Inherits:
-
Object
- Object
- Lackie::Rack::Middleware
- Defined in:
- lib/lackie/rack/middleware.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
- #eval(request) ⇒ Object
-
#initialize(app) ⇒ Middleware
constructor
A new instance of Middleware.
- #result(request) ⇒ Object
- #surrender(request) ⇒ Object
- #yield(request) ⇒ Object
Constructor Details
#initialize(app) ⇒ Middleware
Returns a new instance of Middleware.
6 7 8 9 10 11 |
# File 'lib/lackie/rack/middleware.rb', line 6 def initialize(app) @app = app @command = nil @result = nil @surrender = Lackie::JavaScript::Surrender.new end |
Instance Method Details
#call(env) ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/lackie/rack/middleware.rb', line 13 def call(env) request = ::Rack::Request.new(env) if request.path.match(/\/lackie\/(.+)$/) and self.respond_to?($1) self.send($1, request) else @app.call(env) end end |
#eval(request) ⇒ Object
27 28 29 30 31 |
# File 'lib/lackie/rack/middleware.rb', line 27 def eval(request) @result = nil @command = request.body.read.to_s plain("OK") end |
#result(request) ⇒ Object
43 44 45 46 47 48 49 |
# File 'lib/lackie/rack/middleware.rb', line 43 def result(request) if request.get? get_result(request) else set_result(request) end end |
#surrender(request) ⇒ Object
22 23 24 25 |
# File 'lib/lackie/rack/middleware.rb', line 22 def surrender(request) #@result = nil js(@surrender.script) end |
#yield(request) ⇒ Object
33 34 35 36 37 38 39 40 41 |
# File 'lib/lackie/rack/middleware.rb', line 33 def yield(request) if @command.nil? not_found else cmd = @command @command = nil js(cmd) end end |