class Desi::IndexManager::Index

Attributes

aliases[R]
name[R]
number_of_documents[R]
state[R]

Public Class Methods

new(name, state_data, status_data) click to toggle source
# File lib/desi/index_manager.rb, line 15
def initialize(name, state_data, status_data)
  @name = name
  @number_of_documents = status_data["docs"]["num_docs"] if status_data && status_data["docs"]
  @aliases = []

  if state_data
    @aliases = state_data['aliases']
    @state = state_data['state']
  end
end

Public Instance Methods

<=>(other) click to toggle source
# File lib/desi/index_manager.rb, line 38
def <=>(other)
  name <=> other.name
end
aliased?() click to toggle source
# File lib/desi/index_manager.rb, line 34
def aliased?
  !(aliases.nil? || aliases.empty?)
end
closed?() click to toggle source
# File lib/desi/index_manager.rb, line 46
def closed?
  state == "close"
end
inspect() click to toggle source
# File lib/desi/index_manager.rb, line 30
def inspect
  "#{name} (#{number_of_docs_label})#{aliases_label}"
end
open?() click to toggle source
# File lib/desi/index_manager.rb, line 42
def open?
  state == "open"
end
to_s() click to toggle source
# File lib/desi/index_manager.rb, line 26
def to_s
  name
end

Private Instance Methods

aliases_label() click to toggle source
# File lib/desi/index_manager.rb, line 56
def aliases_label
  aliased? ? ". Aliases: #{aliases.join(', ')}" : nil
end
number_of_docs_label() click to toggle source
# File lib/desi/index_manager.rb, line 52
def number_of_docs_label
  closed? ? 'CLOSED' : "#{number_of_documents} docs"
end