class GraphqlRails::Controller::Action
analyzes route and extracts controller action related data
Attributes
route[R]
Public Class Methods
new(route)
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 14 def initialize(route) @route = route end
Public Instance Methods
arguments()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 22 def arguments action_config.attributes.values end
controller()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 26 def controller @controller ||= "#{namespaced_controller_name}_controller".classify.constantize end
description()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 34 def description action_config.description end
name()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 30 def name @name ||= relative_path.split('#').last end
return_type()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 18 def return_type action_config.return_type end
type_args()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 38 def type_args [type_parser.type_arg] end
type_options()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 42 def type_options { null: !type_parser.required? } end
Private Instance Methods
action_config()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 52 def action_config controller.controller_configuration.action_config(name) end
controller_name()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 60 def controller_name @controller_name ||= relative_path.split('#').first end
namespaced_controller_name()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 56 def namespaced_controller_name [route.module_name, controller_name].reject(&:empty?).join('/') end
namespaced_model_name()
click to toggle source
# File lib/graphql_rails/controller/action.rb, line 64 def namespaced_model_name namespaced_controller_name.singularize.classify end