module Apipie::DSL::Concern
Public Instance Methods
_apipie_concern_data()
click to toggle source
# File lib/apipie/dsl_definition.rb, line 582 def _apipie_concern_data @_apipie_concern_data ||= [] end
_apipie_concern_update_api_blocks()
click to toggle source
# File lib/apipie/dsl_definition.rb, line 586 def _apipie_concern_update_api_blocks @_apipie_concern_update_api_blocks ||= [] end
apipie_concern?()
click to toggle source
# File lib/apipie/dsl_definition.rb, line 590 def apipie_concern? true end
included(controller)
click to toggle source
the concern was included into a controller
Calls superclass method
# File lib/apipie/dsl_definition.rb, line 570 def included(controller) super _apipie_concern_data.each do |method_name, _apipie_dsl_data| # remove method description if exists and create new one description = Apipie.define_method_description(controller, method_name, _apipie_dsl_data) controller._apipie_define_validators(description) end _apipie_concern_update_api_blocks.each do |(methods, block)| controller.apipie_update_methods(methods, &block) end end
method_added(method_name)
click to toggle source
create method api and redefine newly added method
Calls superclass method
# File lib/apipie/dsl_definition.rb, line 595 def method_added(method_name) #:doc: super return if ! Apipie.active_dsl? || !_apipie_dsl_data[:api] _apipie_concern_data << [method_name, _apipie_dsl_data.merge(:from_concern => true)] ensure _apipie_dsl_data_clear end
update_api(*methods, &block)
click to toggle source
# File lib/apipie/dsl_definition.rb, line 605 def update_api(*methods, &block) _apipie_concern_update_api_blocks << [methods, block] end