10. JRubyRequestController
Struts RequestProcessor
Ruby
class RubyActionRequestProcessor
def process_action_form req, res, mapping
# do something
end
def process_action_perform req, res, action, form, mapping
# do something
end
end
20. SinatraRequestProcessor
class SinatraRequestProcessor
def initialize
@app = SinatraHelloAction.new
end
def process req, res
servlet_env = ServletRackEnvironment.new req
env = Rack::Handler::LazyEnv.new servlet_env
status, header, body = @app.call env.to_hash
res.setStatus(status)
header.each do |k, v|
res.setHeader(k, v)
end
out = res.getOutputStream
out.print(body.join)
end
end