Class: ActiveRecordApi::Rest::RequestUrlGenerator
- Inherits:
-
Object
- Object
- ActiveRecordApi::Rest::RequestUrlGenerator
- Includes:
- ActiveAttr::Model
- Defined in:
- lib/active_record_api/rest/request_url_generator.rb
Instance Method Summary collapse
- #current_url ⇒ Object
- #micro_service_prefix ⇒ Object
- #new_params ⇒ Object
- #next_url ⇒ Object
- #protocol ⇒ Object
Instance Method Details
#current_url ⇒ Object
24 25 26 |
# File 'lib/active_record_api/rest/request_url_generator.rb', line 24 def current_url "#{protocol}#{host_with_port}#{micro_service_prefix}#{path}" end |
#micro_service_prefix ⇒ Object
28 29 30 |
# File 'lib/active_record_api/rest/request_url_generator.rb', line 28 def micro_service_prefix request.headers['HTTP_X_REAL_PATH'].split(path).first if request.headers['HTTP_X_REAL_PATH'].present? end |
#new_params ⇒ Object
20 21 22 |
# File 'lib/active_record_api/rest/request_url_generator.rb', line 20 def new_params query_parameters.dup.merge(pagination_param_name.to_s => models_remaining.limit(limit).last.send(pagination_param_name)) end |
#next_url ⇒ Object
15 16 17 18 |
# File 'lib/active_record_api/rest/request_url_generator.rb', line 15 def next_url return if total_count == 0 || models_remaining.count <= limit "#{current_url}?#{new_params.to_param}" end |
#protocol ⇒ Object
32 33 34 35 |
# File 'lib/active_record_api/rest/request_url_generator.rb', line 32 def protocol return 'http://' if Rails.env.development? 'https://' end |