Module: Messaging::Handle::Build
- Defined in:
- lib/messaging/handle.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.configure_session?(instance) ⇒ Boolean
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/messaging/handle.rb', line 39 def self.configure_session?(instance) configure_method = instance.method(:configure) parameter_type, _ = configure_method.parameters.find do |type, name| name == :session end return false if parameter_type.nil? return true if parameter_type == :key = "Optional session parameter of configure is not a keyword argument (Type: #{parameter_type.inspect})" logger.error(tag: :handle) { } raise ArgumentError, end |
.logger ⇒ Object
55 56 57 |
# File 'lib/messaging/handle.rb', line 55 def self.logger @logger ||= Log.build(self) end |
Instance Method Details
#build(strict: nil, session: nil) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/messaging/handle.rb', line 25 def build(strict: nil, session: nil) instance = new instance.strict = strict Log.configure(instance, attr_name: :handler_logger) if Build.configure_session?(instance) instance.configure(session: session) else instance.configure end instance end |