Module: Elasticsearch::API::AsyncSearch::Actions
- Included in:
- AsyncSearchClient
- Defined in:
- lib/elasticsearch/api/namespace/async_search.rb,
lib/elasticsearch/api/actions/async_search/get.rb,
lib/elasticsearch/api/actions/async_search/delete.rb,
lib/elasticsearch/api/actions/async_search/status.rb,
lib/elasticsearch/api/actions/async_search/submit.rb
Instance Method Summary collapse
-
#delete(arguments = {}) ⇒ Object
Deletes an async search by ID.
-
#get(arguments = {}) ⇒ Object
Retrieves the results of a previously submitted async search request given its ID.
-
#status(arguments = {}) ⇒ Object
Retrieves the status of a previously submitted async search request given its ID.
-
#submit(arguments = {}) ⇒ Object
Executes a search request asynchronously.
Instance Method Details
#delete(arguments = {}) ⇒ Object
Deletes an async search by ID. If the search is still running, the search request will be cancelled. Otherwise, the saved search results are deleted.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/elasticsearch/api/actions/async_search/delete.rb', line 32 def delete(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'async_search.delete' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_DELETE path = "_async_search/#{Utils.__listify(_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end |
#get(arguments = {}) ⇒ Object
Retrieves the results of a previously submitted async search request given its ID.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/elasticsearch/api/actions/async_search/get.rb', line 35 def get(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'async_search.get' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_GET path = "_async_search/#{Utils.__listify(_id)}" params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end |
#status(arguments = {}) ⇒ Object
Retrieves the status of a previously submitted async search request given its ID.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/elasticsearch/api/actions/async_search/status.rb', line 33 def status(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'async_search.status' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_GET path = "_async_search/status/#{Utils.__listify(_id)}" params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end |
#submit(arguments = {}) ⇒ Object
Executes a search request asynchronously.
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/elasticsearch/api/actions/async_search/submit.rb', line 74 def submit(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'async_search.submit' } defined_params = [:index].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _index = arguments.delete(:index) method = Elasticsearch::API::HTTP_POST path = if _index "#{Utils.__listify(_index)}/_async_search" else '_async_search' end params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end |