3 define_request :base do
5 meta :provider, :openstack
8 meta :endpoint_type, :public
12 h['X-Auth-Token'] = session_data[:access][:token][:id] unless self.anonymous?
21 if session_data[:base_url]
22 session_data[:base_url]
23 elsif service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s }
24 service_spec[:endpoints][0]["#{ endpoint_type }URL".to_sym]
25 elsif session_data[:auth_service] && session_data[:auth_service][:host_uri] && session_data[:auth_service][:api_version]
26 "#{ session_data[:auth_service][:host_uri] }/v2.0"
27 elsif session_data[:auth_service] && session_data[:auth_service][:host_uri]
28 session_data[:auth_service][:host_uri]
30 raise Aviator::Service::MissingServiceEndpointError.new(service.to_s, self.class)
35 def params_to_querystring(param_names)
38 param_names.each do |param_name|
39 filters << "#{ param_name }=#{ params[param_name] }" if params[param_name]
42 filters.empty? ? "" : "?#{ filters.join('&') }"