Class: NubankSdk::ApiRoutes
- Inherits:
-
Object
- Object
- NubankSdk::ApiRoutes
- Defined in:
- lib/nubank_sdk/api_routes.rb
Constant Summary collapse
- DISCOVERY_URI =
'https://prod-s0-webapp-proxy.nubank.com.br'.freeze
- PROXY_PATHS =
{ default: '/api/discovery', app: '/api/app/discovery', ssl: '' }.freeze
Instance Method Summary collapse
-
#add_entrypoint(path: :default, entrypoint:, url:) ⇒ Hash
Add new entrypoint to url discovery map.
-
#entrypoint(path: :default, entrypoint:, type: :full) ⇒ String, Array
Return the url for a given path and entrypoint.
-
#initialize(url_discovery_map: {}, connection_adapter: nil) ⇒ ApiRoutes
constructor
Controller for the ApiRoutes class.
Constructor Details
#initialize(url_discovery_map: {}, connection_adapter: nil) ⇒ ApiRoutes
Controller for the ApiRoutes class
18 19 20 21 |
# File 'lib/nubank_sdk/api_routes.rb', line 18 def initialize(url_discovery_map: {}, connection_adapter: nil) @url_discovery_map = url_discovery_map @connection_adapter = connection_adapter end |
Instance Method Details
#add_entrypoint(path: :default, entrypoint:, url:) ⇒ Hash
Add new entrypoint to url discovery map
50 51 52 53 54 55 |
# File 'lib/nubank_sdk/api_routes.rb', line 50 def add_entrypoint(path: :default, entrypoint:, url:) path_map = @url_discovery_map[path] || {} path_map[entrypoint] = url @url_discovery_map[path] = path_map end |
#entrypoint(path: :default, entrypoint:, type: :full) ⇒ String, Array
Return the url for a given path and entrypoint
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/nubank_sdk/api_routes.rb', line 31 def entrypoint(path: :default, entrypoint:, type: :full) discovery(path) if @url_discovery_map[path].nil? url = @url_discovery_map[path][entrypoint] return url if type == :full url_splitted = url.split('/api') [url_splitted.first, "/api#{url_splitted.last}"] end |