Add option to force passing alt=json for some APIs that return xml by default
This commit is contained in:
parent
64c1eb0941
commit
2533098484
|
@ -90,6 +90,10 @@ module Google
|
||||||
@path.reduce('') { |a, e| a + '/' + e }
|
@path.reduce('') { |a, e| a + '/' + e }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def option(opt_name)
|
||||||
|
@names[sprintf('%s?%s', key, opt_name)]
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# For RPC style methods, pick a name based off the request objects.
|
# For RPC style methods, pick a name based off the request objects.
|
||||||
|
@ -184,6 +188,7 @@ module Google
|
||||||
value.constant = constantize_scope(key)
|
value.constant = constantize_scope(key)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@rest_description.force_alt_json = @names.option('force_alt_json')
|
||||||
@rest_description.parameters.reject! { |k, _v| PARAMETER_BLACKLIST.include?(k) }
|
@rest_description.parameters.reject! { |k, _v| PARAMETER_BLACKLIST.include?(k) }
|
||||||
annotate_parameters(@rest_description.parameters)
|
annotate_parameters(@rest_description.parameters)
|
||||||
annotate_resource(@rest_description.name, @rest_description)
|
annotate_resource(@rest_description.name, @rest_description)
|
||||||
|
|
|
@ -99,6 +99,9 @@ module Google
|
||||||
end
|
end
|
||||||
|
|
||||||
class RestDescription
|
class RestDescription
|
||||||
|
attr_accessor :force_alt_json
|
||||||
|
alias_method :force_alt_json?, :force_alt_json
|
||||||
|
|
||||||
def version
|
def version
|
||||||
ActiveSupport::Inflector.camelize(@version.gsub(/\W/, '-')).gsub(/-/, '_')
|
ActiveSupport::Inflector.camelize(@version.gsub(/\W/, '-')).gsub(/-/, '_')
|
||||||
end
|
end
|
||||||
|
|
|
@ -73,6 +73,9 @@ def <%= api_method.generated_name %>(<% for param in api_method.required_paramet
|
||||||
command.request_object = <%= api.schemas[api_method.request._ref].generated_name %>_object
|
command.request_object = <%= api.schemas[api_method.request._ref].generated_name %>_object
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% if api_method.response -%>
|
<% if api_method.response -%>
|
||||||
|
<% if api.force_alt_json? -%>
|
||||||
|
command.query['alt'] = 'json'
|
||||||
|
<% end -%>
|
||||||
command.response_representation = <%= api.schemas[api_method.response._ref].generated_type %>::Representation
|
command.response_representation = <%= api.schemas[api_method.response._ref].generated_type %>::Representation
|
||||||
command.response_class = <%= api.schemas[api_method.response._ref].generated_type %>
|
command.response_class = <%= api.schemas[api_method.response._ref].generated_type %>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
Loading…
Reference in New Issue