class Elasticsnap::FreezeElasticsearch
Attributes
url[RW]
Public Class Methods
new(url: nil)
click to toggle source
# File lib/elasticsnap/freeze_elasticsearch.rb, line 10 def initialize(url: nil) raise ArgumentError, 'url required' if url.nil? @url = url end
Public Instance Methods
disable_flush()
click to toggle source
# File lib/elasticsnap/freeze_elasticsearch.rb, line 36 def disable_flush Flex::Configuration.http_client.base_uri = url result = Flex.update_index_settings( index: '_all', data: { index: { translog: { disable_flush: true } } } ) raise DisableFlushFailed unless result.fetch('ok', false) == true result end
enable_flush()
click to toggle source
# File lib/elasticsnap/freeze_elasticsearch.rb, line 54 def enable_flush Flex::Configuration.http_client.base_uri = url result = Flex.update_index_settings( index: '_all', data: { index: { translog: { disable_flush: false } } } ) raise EnableFlushFailed unless result.fetch('ok', false) == true result end
flush()
click to toggle source
# File lib/elasticsnap/freeze_elasticsearch.rb, line 27 def flush Flex::Configuration.http_client.base_uri = url result = Flex.flush_index(index: '_all') raise FlushFailed unless result.fetch('ok', false) == true result end
freeze(&block)
click to toggle source
# File lib/elasticsnap/freeze_elasticsearch.rb, line 16 def freeze(&block) begin flush disable_flush block.call unless block.nil? ensure enable_flush end end