forked from loafle/openapi-generator-original
[REQ] [RUBY] [FARADAY] Allow middleware to be configured (#10495)
* feat: allow configuring middleware in setup * fix: stop requiring Faraday middleware unnecessarily * chore: regenerate petstore samples * chore: regenerate openapi3 client * chore: ci fails so rebuild
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
|
||||
connection = Faraday.new(:url => config.base_url, :ssl => ssl_options) do |conn|
|
||||
conn.basic_auth(config.username, config.password)
|
||||
@config.configure_middleware(conn)
|
||||
if opts[:header_params]["Content-Type"] == "multipart/form-data"
|
||||
conn.request :multipart
|
||||
conn.request :url_encoded
|
||||
|
||||
@@ -117,6 +117,9 @@ module {{moduleName}}
|
||||
@ssl_ca_file = nil
|
||||
@ssl_client_cert = nil
|
||||
@ssl_client_key = nil
|
||||
@middlewares = []
|
||||
@request_middlewares = []
|
||||
@response_middlewares = []
|
||||
@timeout = 60
|
||||
{{/isFaraday}}
|
||||
{{^isFaraday}}
|
||||
@@ -346,5 +349,37 @@ module {{moduleName}}
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
{{#isFaraday}}
|
||||
# Adds middleware to the stack
|
||||
def use(*middleware)
|
||||
@middlewares << middleware
|
||||
end
|
||||
|
||||
# Adds request middleware to the stack
|
||||
def request(*middleware)
|
||||
@request_middlewares << middleware
|
||||
end
|
||||
|
||||
# Adds response middleware to the stack
|
||||
def response(*middleware)
|
||||
@response_middlewares << middleware
|
||||
end
|
||||
|
||||
# Set up middleware on the connection
|
||||
def configure_middleware(connection)
|
||||
@middlewares.each do |middleware|
|
||||
connection.use(*middleware)
|
||||
end
|
||||
|
||||
@request_middlewares.each do |middleware|
|
||||
connection.request(*middleware)
|
||||
end
|
||||
|
||||
@response_middlewares.each do |middleware|
|
||||
connection.response(*middleware)
|
||||
end
|
||||
end
|
||||
{{/isFaraday}}
|
||||
end
|
||||
end
|
||||
|
||||
@@ -57,6 +57,7 @@ module Petstore
|
||||
|
||||
connection = Faraday.new(:url => config.base_url, :ssl => ssl_options) do |conn|
|
||||
conn.basic_auth(config.username, config.password)
|
||||
@config.configure_middleware(conn)
|
||||
if opts[:header_params]["Content-Type"] == "multipart/form-data"
|
||||
conn.request :multipart
|
||||
conn.request :url_encoded
|
||||
|
||||
@@ -148,6 +148,9 @@ module Petstore
|
||||
@ssl_ca_file = nil
|
||||
@ssl_client_cert = nil
|
||||
@ssl_client_key = nil
|
||||
@middlewares = []
|
||||
@request_middlewares = []
|
||||
@response_middlewares = []
|
||||
@timeout = 60
|
||||
@debugging = false
|
||||
@inject_format = false
|
||||
@@ -354,5 +357,35 @@ module Petstore
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
# Adds middleware to the stack
|
||||
def use(*middleware)
|
||||
@middlewares << middleware
|
||||
end
|
||||
|
||||
# Adds request middleware to the stack
|
||||
def request(*middleware)
|
||||
@request_middlewares << middleware
|
||||
end
|
||||
|
||||
# Adds response middleware to the stack
|
||||
def response(*middleware)
|
||||
@response_middlewares << middleware
|
||||
end
|
||||
|
||||
# Set up middleware on the connection
|
||||
def configure_middleware(connection)
|
||||
@middlewares.each do |middleware|
|
||||
connection.use(*middleware)
|
||||
end
|
||||
|
||||
@request_middlewares.each do |middleware|
|
||||
connection.request(*middleware)
|
||||
end
|
||||
|
||||
@response_middlewares.each do |middleware|
|
||||
connection.response(*middleware)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -359,5 +359,6 @@ module Petstore
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
@@ -313,5 +313,6 @@ module XAuthIDAlias
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
@@ -350,5 +350,6 @@ module DynamicServers
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
@@ -266,5 +266,6 @@ module Petstore
|
||||
|
||||
url
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user