11# frozen_string_literal: true
2- require "twirp/rails/rails_ext/rack/logger"
32require "twirp/rails/logging/formatters/json"
43require "twirp/rails/logging/formatters/key_value"
5- require "twirp/rails/configurations/logging"
64require "twirp/rails/configuration"
75require 'twirp/rails/logging/adapter'
86require 'twirp/rails/logging/subscriber'
97require "twirp/rails/service_wrapper"
108require "twirp/rails/helpers/hooks"
119require "twirp/rails/helpers/services"
1210require "twirp/rails/routes"
13- require "twirp/rails/engine"
1411require "twirp/rails/version"
12+ require 'active_support'
1513
1614module Twirp
1715 module Rails
1816 class << self
17+ attr_accessor :application
18+
1919 def configuration
2020 @configuration ||= Configuration . new
2121 end
2222
2323 def configure ( &block )
2424 yield configuration if block_given?
25- setup
2625 configuration
2726 end
2827
29- def setup
30- if configuration . logging . log_twirp_calls
31- if configuration . logging . log_twirp_calls . is_a? ( Proc )
32- log_twirp_calls! ( &configuration . logging . log_twirp_calls )
33- else
34- log_twirp_calls!
35- end
28+ def setup_logging ( app )
29+ @application = app
30+
31+ require "twirp/rails/rails_ext/rack/logger"
32+
33+ if application . config . twirp . logging . log_writer . is_a? ( Proc )
34+ log_twirp_calls! ( &app . config . twirp . logging . log_writer )
35+ else
36+ log_twirp_calls!
3637 end
3738 end
3839
@@ -59,19 +60,22 @@ def log_twirp_calls!(&log_writer)
5960
6061 def load_handlers
6162 configuration . handlers_paths . each do |handlers_path |
62- ::Rails . application . reloader . to_prepare do
63- Dir [ File . join ( handlers_path . to_s , '**' , '*.rb' ) ] . sort . each { |f | require f }
64- end
63+ Dir [ File . join ( handlers_path . to_s , '**' , '*.rb' ) ] . sort . each { |f | require f }
6564 end
6665 end
6766
6867 def load_hooks
6968 configuration . hooks_paths . each do |hooks_path |
70- ::Rails . application . reloader . to_prepare do
71- Dir [ File . join ( hooks_path . to_s , '**' , '*.rb' ) ] . sort . each { |f | require f }
72- end
69+ Dir [ File . join ( hooks_path . to_s , '**' , '*.rb' ) ] . sort . each { |f | require f }
7370 end
7471 end
72+
73+ def application_config
74+ application . config . twirp
75+ end
7576 end
7677 end
7778end
79+
80+
81+ require "twirp/rails/railtie" if defined? ( Rails )
0 commit comments