module OMGF::Regurgitator

Public Instance Methods

_log_err(env, m, e) click to toggle source
# File lib/omgf/regurgitator.rb, line 18
def _log_err(env, m, e)
  l = env["rack.logger"] or return
  l.error("retrying #{m} against tracker: #{e.message} (#{e.class})")
end
_uris!(info) click to toggle source
# File lib/omgf/regurgitator.rb, line 33
def _uris!(info)
  info[:uris].values.flatten! || []
end
check_domain!(domain) click to toggle source
# File lib/omgf/regurgitator.rb, line 13
def check_domain!(domain)
  get_dmid(domain) or
    raise MogileFS::Backend::UnregDomainError, "#{domain} not found"
end
mg_get_uris(env, domain, key, get_path_opts = {}) click to toggle source
Calls superclass method
# File lib/omgf/regurgitator.rb, line 37
def mg_get_uris(env, domain, key, get_path_opts = {})
  check_domain!(domain)
  info = file_info({}, domain, key) or return super
  _uris!(info)
rescue Sequel::Error => e
  _log_err(env, "mg_get_uris", e)
  super
end
mg_list_keys(env, domain, prefix, after, limit) { |x, x, x| ... } click to toggle source
Calls superclass method
# File lib/omgf/regurgitator.rb, line 23
def mg_list_keys(env, domain, prefix, after, limit)
  check_domain!(domain)
  list_keys(domain, prefix: prefix, after: after, limit: limit) do |x|
    yield(x[:dkey], x[:length], x[:devcount])
  end
rescue Sequel::Error => e
  _log_err(env, "mg_list_keys", e)
  super
end
mg_size_and_uris(env, domain, key, get_path_opts = {}) click to toggle source
Calls superclass method
# File lib/omgf/regurgitator.rb, line 46
def mg_size_and_uris(env, domain, key, get_path_opts = {})
  check_domain!(domain)
  info = file_info({}, domain, key) or return super
  [ info[:length], _uris!(info) ]
rescue Sequel::Error => e
  _log_err(env, "mg_size_and_uris", e)
  super
end
regurgitator_init(db) click to toggle source
# File lib/omgf/regurgitator.rb, line 8
def regurgitator_init(db)
  @db = db
  file_info_init
end