Class: Gapic::Schema::ParameterSchema
- Inherits:
-
Object
- Object
- Gapic::Schema::ParameterSchema
- Defined in:
- lib/gapic/schema/parameter_schema.rb
Overview
Contains information about known parameter names and the types expected to be parsed from the request options string
Instance Attribute Summary collapse
-
#array_params ⇒ Object
Returns the value of attribute array_params.
-
#bool_params ⇒ Object
Returns the value of attribute bool_params.
-
#map_params ⇒ Object
Returns the value of attribute map_params.
-
#string_params ⇒ Object
Returns the value of attribute string_params.
Class Method Summary collapse
-
.create(bool_params_list: [], string_params_list: [], array_params_list: [], map_params_list: []) ⇒ Object
Creates a schema from given parameter lists.
Instance Method Summary collapse
-
#extend_with_aliases(bool_aliases: {}, string_aliases: {}, array_aliases: {}, map_aliases: {}) ⇒ Object
Creates a new schema from this by adding aliases to existing parameters.
-
#initialize(bool_params = {}, string_params = {}, array_params = {}, map_params = {}) ⇒ ParameterSchema
constructor
Creates a schema with given alias-parameter maps.
-
#schema_name_type_for(param_name) ⇒ Array<Symbol, String>
Looks up a parameter by name (including aliases) and return a type label (or :unknown) and a configuration name.
Constructor Details
#initialize(bool_params = {}, string_params = {}, array_params = {}, map_params = {}) ⇒ ParameterSchema
Creates a schema with given alias-parameter maps
32 33 34 35 36 37 |
# File 'lib/gapic/schema/parameter_schema.rb', line 32 def initialize bool_params = {}, string_params = {}, array_params = {}, map_params = {} @bool_params = bool_params @string_params = string_params @array_params = array_params @map_params = map_params end |
Instance Attribute Details
#array_params ⇒ Object
Returns the value of attribute array_params.
24 25 26 |
# File 'lib/gapic/schema/parameter_schema.rb', line 24 def array_params @array_params end |
#bool_params ⇒ Object
Returns the value of attribute bool_params.
22 23 24 |
# File 'lib/gapic/schema/parameter_schema.rb', line 22 def bool_params @bool_params end |
#map_params ⇒ Object
Returns the value of attribute map_params.
25 26 27 |
# File 'lib/gapic/schema/parameter_schema.rb', line 25 def map_params @map_params end |
#string_params ⇒ Object
Returns the value of attribute string_params.
23 24 25 |
# File 'lib/gapic/schema/parameter_schema.rb', line 23 def string_params @string_params end |
Class Method Details
.create(bool_params_list: [], string_params_list: [], array_params_list: [], map_params_list: []) ⇒ Object
Creates a schema from given parameter lists
45 46 47 48 49 50 51 52 |
# File 'lib/gapic/schema/parameter_schema.rb', line 45 def self.create bool_params_list: [], string_params_list: [], array_params_list: [], map_params_list: [] bool_params = bool_params_list.to_h { |val| [val, val] } string_params = string_params_list.to_h { |val| [val, val] } array_params = array_params_list.to_h { |val| [val, val] } map_params = map_params_list.to_h { |val| [val, val] } ParameterSchema.new bool_params, string_params, array_params, map_params end |
Instance Method Details
#extend_with_aliases(bool_aliases: {}, string_aliases: {}, array_aliases: {}, map_aliases: {}) ⇒ Object
Creates a new schema from this by adding aliases to existing parameters
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/gapic/schema/parameter_schema.rb', line 60 def extend_with_aliases bool_aliases: {}, string_aliases: {}, array_aliases: {}, map_aliases: {} bool_params = @bool_params.dup bool_aliases.each { |param_alias, param| bool_params[param_alias] = param if bool_params.key? param } string_params = @string_params.dup string_aliases.each { |param_alias, param| string_params[param_alias] = param if string_params.key? param } array_params = @array_params.dup array_aliases.each { |param_alias, param| array_params[param_alias] = param if array_params.key? param } map_params = @map_params.dup map_aliases.each { |param_alias, param| map_params[param_alias] = param if map_params.key? param } ParameterSchema.new bool_params, string_params, array_params, map_params end |
#schema_name_type_for(param_name) ⇒ Array<Symbol, String>
Looks up a parameter by name (including aliases) and return a type label (or :unknown) and a configuration name
80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/gapic/schema/parameter_schema.rb', line 80 def schema_name_type_for param_name if @bool_params.key? param_name [:bool, @bool_params[param_name]] elsif @string_params.key? param_name [:string, @string_params[param_name]] elsif @array_params.key? param_name [:array, @array_params[param_name]] elsif @map_params.key? param_name [:map, @map_params[param_name]] else [:unknown, param_name] end end |