Sha256: 88c7f544f0a852c340447a4a654ea642d66e38d4cc38f80a9d2addef0a986611
Contents?: true
Size: 1.86 KB
Versions: 1
Compression:
Stored size: 1.86 KB
Contents
require "abstract_controller/base" require "abstract_controller/rendering" require "action_view/rendering" require "rails_twirp/render_pb" require "rails_twirp/errors" require "abstract_controller/asset_paths" require "abstract_controller/caching" require "abstract_controller/logger" require "abstract_controller/callbacks" require "rails_twirp/rescue" module RailsTwirp class Base < AbstractController::Base abstract! # The order of these includes matter. # The rendering modules extend each other, so need to be in this order. include AbstractController::Rendering include ActionView::Rendering include RenderPb include Errors # These add helpers for the controller include AbstractController::AssetPaths include AbstractController::Caching include AbstractController::Logger # These need to be last so errors can be handled as early as possible. include AbstractController::Callbacks include Rescue attr_internal :request, :env, :response_class def initialize @_request = nil @_env = nil @_response_class = nil super end def http_request @_http_request ||= ActionDispatch::Request.new(env[:rack_env]) end def dispatch(action, request, response_class, env = {}) self.request = request self.env = env self.response_class = response_class http_request.controller_instance = self process(action) # Implicit render self.response_body = render unless response_body response_body end def self.dispatch(action, request, response_class, env = {}) new.dispatch(action, request, response_class, env) end # Used by the template renderer to figure out which template to use def details_for_lookup {formats: [:pb], handlers: [:pbbuilder]} end ActiveSupport.run_load_hooks(:rails_twirp, self) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rails_twirp-0.3.0 | lib/rails_twirp/base.rb |