Method: Elasticsearch::API::Synonyms::Actions#delete_synonym_rule

Defined in:
lib/elasticsearch/api/actions/synonyms/delete_synonym_rule.rb

#delete_synonym_rule(arguments = {}) ⇒ Object

Delete a synonym rule. Delete a synonym rule from a synonym set.

Parameters:

  • (defaults to: {})

    a customizable set of options

Options Hash (arguments):

  • :set_id (String)

    The ID of the synonym set to update. (Required)

  • :rule_id (String)

    The ID of the synonym rule to delete. (Required)

  • :refresh (Boolean)

    If true, the request will refresh the analyzers with the deleted synonym rule and wait for the new synonyms to be available before returning. If false, analyzers will not be reloaded with the deleted synonym rule Server default: true.

  • :error_trace (Boolean)

    When set to true Elasticsearch will include the full stack trace of errors when they occur.

  • :filter_path (String, Array<String>)

    Comma-separated list of filters in dot notation which reduce the response returned by Elasticsearch.

  • :human (Boolean)

    When set to true will return statistics in a format suitable for humans. For example ‘“exists_time”: “1h”` for humans and `“exists_time_in_millis”: 3600000` for computers. When disabled the human readable values will be omitted. This makes sense for responses being consumed only by machines.

  • :pretty (Boolean)

    If set to true the returned JSON will be “pretty-formatted”. Only use this option for debugging only.

  • :headers (Hash)

    Custom HTTP headers

Raises:

See Also:



47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/elasticsearch/api/actions/synonyms/delete_synonym_rule.rb', line 47

def delete_synonym_rule(arguments = {})
  request_opts = { endpoint: arguments[:endpoint] || 'synonyms.delete_synonym_rule' }

  defined_params = [:set_id, :rule_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 'set_id' missing" unless arguments[:set_id]
  raise ArgumentError, "Required argument 'rule_id' missing" unless arguments[:rule_id]

  arguments = arguments.clone
  headers = arguments.delete(:headers) || {}

  body = nil

  _set_id = arguments.delete(:set_id)

  _rule_id = arguments.delete(:rule_id)

  method = Elasticsearch::API::HTTP_DELETE
  path   = "_synonyms/#{Utils.listify(_set_id)}/#{Utils.listify(_rule_id)}"
  params = Utils.process_params(arguments)

  Elasticsearch::API::Response.new(
    perform_request(method, path, params, body, headers, request_opts)
  )
end