# File lib/hammer_cli/apipie/option_builder.rb, line 69 def aliased(name, resource_name_map) resource_name = name.gsub(/_id[s]?$/, "") resource_name = resource_name_map[resource_name.to_s] || resource_name_map[resource_name.to_sym] || resource_name if name.end_with?("_id") return "#{resource_name}_id" elsif name.end_with?("_ids") return "#{resource_name}_ids" else return name end end
# File lib/hammer_cli/apipie/option_builder.rb, line 38 def create_option(param, resource_name_map) option( option_switch(param, resource_name_map), option_type(param, resource_name_map), option_desc(param), option_opts(param) ) end
# File lib/hammer_cli/apipie/option_builder.rb, line 55 def option_desc(param) param.description || " " end
# File lib/hammer_cli/apipie/option_builder.rb, line 59 def option_opts(param) opts = {} opts[:required] = true if (param.required? and require_options?) if param.expected_type == :array || param.validator =~ /Array/ opts[:format] = HammerCLI::Options::Normalizers::List.new end opts[:attribute_name] = HammerCLI.option_accessor_name(param.name) return opts end
# File lib/hammer_cli/apipie/option_builder.rb, line 47 def option_switch(param, resource_name_map) '--' + optionamize(aliased(param.name, resource_name_map)) end
# File lib/hammer_cli/apipie/option_builder.rb, line 51 def option_type(param, resource_name_map) aliased(param.name, resource_name_map).upcase.gsub('-', '_') end
# File lib/hammer_cli/apipie/option_builder.rb, line 25 def options_for_params(params, filter, resource_name_map) opts = [] params.each do |p| next if filter.include?(p.name) || filter.include?(p.name.to_sym) if p.expected_type == :hash opts += options_for_params(p.params, filter, resource_name_map) else opts << create_option(p, resource_name_map) end end opts end
Generated with the Darkfish Rdoc Generator 2.