Module: ElasticSearch::Api::Admin::Index

Included in:
Client
Defined in:
lib/elasticsearch/client/admin_index.rb

Constant Summary collapse

PSEUDO_INDICES =
[:all]

Instance Method Summary collapse

Instance Method Details

#alias_index(operations, options = {}) ⇒ Object

:add => { “index” => “alias” } :add => [=> “alias”, => “alias2”] :add => { “index” => “alias”, “index2” => “alias2” } :remove => { “index” => “alias” } :remove => [=> “alias”, {“index2” => “alias2”] :remove => { “index” => “alias”, “index2” => “alias2” } :actions => [=> {:index => “index”, :alias => “alias”}]



46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/elasticsearch/client/admin_index.rb', line 46

def alias_index(operations, options={})
  if operations[:actions]
    alias_ops = operations
  else
    alias_ops = { :actions => [] }
    [:add, :remove].each do |op|
      next unless operations.has_key?(op)
      op_actions = operations[op].is_a?(Array) ? operations[op] : [operations[op]]
      op_actions.each do |action_hash|
        action_hash.each do |index, index_alias|
          alias_ops[:actions] << { op => { :index => index, :alias => index_alias }}
        end
      end
    end
  end
  execute(:alias_index, alias_ops, options)
end

#create_index(index, create_options = {}, options = {}) ⇒ Object

options: number_of_shards, number_of_replicas



28
29
30
31
32
33
# File 'lib/elasticsearch/client/admin_index.rb', line 28

def create_index(index, create_options={}, options={})
  unless create_options[:index]
    create_options = { :index => create_options }
  end
  execute(:create_index, index, create_options, options)
end

#create_river(type, create_options, options = {}) ⇒ Object



129
130
131
# File 'lib/elasticsearch/client/admin_index.rb', line 129

def create_river(type, create_options, options={})
  execute(:create_river, type, create_options, options)
end

#delete_index(index, options = {}) ⇒ Object



35
36
37
# File 'lib/elasticsearch/client/admin_index.rb', line 35

def delete_index(index, options={})
  execute(:delete_index, index, options)
end

#delete_mapping(options = {}) ⇒ Object



83
84
85
86
# File 'lib/elasticsearch/client/admin_index.rb', line 83

def delete_mapping(options={})
  index, type, options = extract_required_scope(options)
  execute(:delete_mapping, index, type, options)
end

#delete_river(type = nil, options = {}) ⇒ Object



141
142
143
# File 'lib/elasticsearch/client/admin_index.rb', line 141

def delete_river(type=nil, options={})
  execute(:delete_river, type, options)
end

#flush(*args) ⇒ Object

list of indices, or :all options: refresh default: default_index if defined, otherwise :all



100
101
102
103
# File 'lib/elasticsearch/client/admin_index.rb', line 100

def flush(*args)
  indices, options = extract_indices_and_options(args)
  execute(:flush, indices, options)
end

#get_aliases(index = nil, options = {}) ⇒ Object



64
65
66
67
# File 'lib/elasticsearch/client/admin_index.rb', line 64

def get_aliases(index=nil, options={})
  scope_index, type, options = extract_scope(options)
  execute(:get_aliases, index || scope_index, options)
end

#get_river(type, options = {}) ⇒ Object



133
134
135
# File 'lib/elasticsearch/client/admin_index.rb', line 133

def get_river(type, options={})
  execute(:get_river, type, options)
end

#get_settings(index = default_index, options = {}) ⇒ Object



93
94
95
# File 'lib/elasticsearch/client/admin_index.rb', line 93

def get_settings(index=default_index, options={})
  execute(:get_settings, index, options)
end

#index_exists?(index) ⇒ Boolean

Returns:

  • (Boolean)


7
8
9
10
11
12
13
14
15
# File 'lib/elasticsearch/client/admin_index.rb', line 7

def index_exists?(index)
  !!index_status(index)
rescue RequestError => e
  if e.status == 404
    false
  else
    raise e
  end
end

#index_mapping(*args) ⇒ Object



22
23
24
25
# File 'lib/elasticsearch/client/admin_index.rb', line 22

def index_mapping(*args)
  indices, options = extract_indices_and_options(args)
  execute(:index_mapping, indices, options)
end

#index_status(*args) ⇒ Object



17
18
19
20
# File 'lib/elasticsearch/client/admin_index.rb', line 17

def index_status(*args)
  indices, options = extract_indices_and_options(args)
  execute(:index_status, indices, options)
end

#optimize(*args) ⇒ Object

list of indices, or :all options: max_num_segments, only_expunge_deletes, refresh, flush default: default_index if defined, otherwise all



124
125
126
127
# File 'lib/elasticsearch/client/admin_index.rb', line 124

def optimize(*args)
  indices, options = extract_indices_and_options(args)
  execute(:optimize, indices, options)
end

#refresh(*args) ⇒ Object

list of indices, or :all no options default: default_index if defined, otherwise all



108
109
110
111
# File 'lib/elasticsearch/client/admin_index.rb', line 108

def refresh(*args)
  indices, options = extract_indices_and_options(args)
  execute(:refresh, indices, options)
end

#river_status(type, options = {}) ⇒ Object



137
138
139
# File 'lib/elasticsearch/client/admin_index.rb', line 137

def river_status(type, options={})
  execute(:river_status, type, options)
end

#snapshot(*args) ⇒ Object

list of indices, or :all no options default: default_index if defined, otherwise all



116
117
118
119
# File 'lib/elasticsearch/client/admin_index.rb', line 116

def snapshot(*args)
  indices, options = extract_indices_and_options(args)
  execute(:snapshot, indices, options)
end

#update_mapping(mapping, options = {}) ⇒ Object

options: ignore_conflicts



70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/elasticsearch/client/admin_index.rb', line 70

def update_mapping(mapping, options={})
  index, type, options = extract_required_scope(options)

  options = options.dup
  indices = Array(index)
  unless mapping[type]
    mapping = { type => mapping }
  end

  indices.collect! { |i| PSEUDO_INDICES.include?(i) ? "_#{i}" : i }
  execute(:update_mapping, indices, type, mapping, options)
end

#update_settings(settings, options = {}) ⇒ Object



88
89
90
91
# File 'lib/elasticsearch/client/admin_index.rb', line 88

def update_settings(settings, options={})
  index, type, options = extract_scope(options)
  execute(:update_settings, index, settings, options)
end