Module: RailsParamValidation::AnnotationExtension::ClassMethods
- Defined in:
- lib/rails-param-validation/rails/extensions/annotation_extension.rb
Instance Method Summary collapse
- #accept_all_params ⇒ Object
- #action(description = nil, flags = RailsParamValidation.config.default_action_flags) ⇒ Object
- #base_path(path, include_module_name: true) ⇒ Object
- #body_param(name, schema, description = nil) ⇒ Object
- #body_type(mime_type) ⇒ Object
- #desc(description) ⇒ Object
- #flag(name, value, _comment = nil) ⇒ Object
- #no_params ⇒ Object
- #param(name, schema, type = :query, description = nil) ⇒ Object
- #param_definition ⇒ Object
- #path_param(name, schema, description = nil) ⇒ Object
- #query_param(name, schema, description = nil) ⇒ Object
- #response(status, schema, description) ⇒ Object
- #security_hint(security) ⇒ Object
Instance Method Details
#accept_all_params ⇒ Object
89 90 91 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 89 def accept_all_params param_definition.disable_param_validation! end |
#action(description = nil, flags = RailsParamValidation.config.default_action_flags) ⇒ Object
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 105 def action(description = nil, flags = RailsParamValidation.config.default_action_flags) if description.is_a?(Hash) method = description.keys.first.to_sym path = description.values.first description = "" else method = nil path = nil end @param_definition = ActionDefinition.new(Types::Namespace.caller_file) @param_definition.description = description flags.each { |name, value| @param_definition.add_flag name, value } if method @param_definition.add_path method, path end yield end |
#base_path(path, include_module_name: true) ⇒ Object
41 42 43 44 45 46 47 48 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 41 def base_path(path, include_module_name: true) if include_module_name path = "#{module_parent_name.underscore}/#{path}".gsub("//", "/") end @base_paths ||= {} @base_paths[self.name] = path end |
#body_param(name, schema, description = nil) ⇒ Object
65 66 67 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 65 def body_param(name, schema, description = nil) param name, schema, :body, description end |
#body_type(mime_type) ⇒ Object
73 74 75 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 73 def body_type(mime_type) param_definition.request_body_type! mime_type end |
#desc(description) ⇒ Object
77 78 79 80 81 82 83 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 77 def desc(description) if @param_definition param_definition.description = description else AnnotationManager.instance.annotate_class! self, :description, description end end |
#flag(name, value, _comment = nil) ⇒ Object
97 98 99 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 97 def flag(name, value, _comment = nil) @param_definition.add_flag name, value end |
#no_params ⇒ Object
85 86 87 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 85 def no_params param_definition end |
#param(name, schema, type = :query, description = nil) ⇒ Object
57 58 59 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 57 def param(name, schema, type = :query, description = nil) param_definition.add_param name, type, schema, description end |
#param_definition ⇒ Object
50 51 52 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 50 def param_definition @param_definition || raise(StandardError.new "Annotation must be part of an operation-block") end |
#path_param(name, schema, description = nil) ⇒ Object
69 70 71 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 69 def path_param(name, schema, description = nil) param name, schema, :path, description end |
#query_param(name, schema, description = nil) ⇒ Object
61 62 63 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 61 def query_param(name, schema, description = nil) param name, schema, :query, description end |
#response(status, schema, description) ⇒ Object
93 94 95 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 93 def response(status, schema, description) param_definition.add_response status, schema, description end |
#security_hint(security) ⇒ Object
101 102 103 |
# File 'lib/rails-param-validation/rails/extensions/annotation_extension.rb', line 101 def security_hint(security) @param_definition.add_security(security) end |