class Triglav::Agent::Status

Constants

VERSION

Attributes

path[RW]
resource_uri[R]
resource_uri_prefix[R]

Public Class Methods

new(resource_uri_prefix, resource_uri) click to toggle source
# File lib/triglav/agent/status.rb, line 11
def initialize(resource_uri_prefix, resource_uri)
  @path = $setting.status_file
  @resource_uri_prefix = resource_uri_prefix.to_sym
  @resource_uri = resource_uri.to_sym
  @parents = [VERSION, @resource_uri_prefix, @resource_uri]
end
select_resource_uri_prefixes!(resource_uri_prefixes) click to toggle source
# File lib/triglav/agent/status.rb, line 73
def self.select_resource_uri_prefixes!(resource_uri_prefixes)
  Triglav::Agent::StorageFile.select!($setting.status_file, [VERSION], resource_uri_prefixes.map(&:to_sym))
end
select_resource_uris!(resource_uri_prefix, resource_uris) click to toggle source
# File lib/triglav/agent/status.rb, line 77
def self.select_resource_uris!(resource_uri_prefix, resource_uris)
  Triglav::Agent::StorageFile.select!($setting.status_file, [VERSION, resource_uri_prefix.to_sym], resource_uris.map(&:to_sym))
end

Public Instance Methods

get(*args) click to toggle source

get(key) get(key1, key2) get() get([key1, key2])

# File lib/triglav/agent/status.rb, line 68
def get(*args)
  keys = (args || []).flatten
  StorageFile.get(path, [*@parents, *keys])
end
getsetnx(*args) click to toggle source

getsetnx(val) getsetnx(key, val) getsetnx(key1, key2, val) getsetnx(, val) getsetnx([key1, key2], val)

# File lib/triglav/agent/status.rb, line 58
def getsetnx(*args)
  val = args.pop
  keys = args.flatten
  StorageFile.getsetnx(path, [*@parents, *keys], val)
end
merge!(*args) click to toggle source

Merge Hash value with existing Hash value.

merge!(val) merge!(key, val) merge!(key1, key2, val) merge!(, val) merge!([key1, key2], val)

# File lib/triglav/agent/status.rb, line 36
def merge!(*args)
  val = args.pop
  keys = args.flatten
  StorageFile.merge!(path, [*@parents, *keys], val)
end
set(*args) click to toggle source

set(val) set(key, val) set(key1, key2, val) set(, val) set([key1, key2], val)

# File lib/triglav/agent/status.rb, line 23
def set(*args)
  val = args.pop
  keys = args.flatten
  StorageFile.set(path, [*@parents, *keys], val)
end
setnx(*args) click to toggle source

setnx(val) setnx(key, val) setnx(key1, key2, val) setnx(, val) setnx([key1, key2], val)

# File lib/triglav/agent/status.rb, line 47
def setnx(*args)
  val = args.pop
  keys = args.flatten
  StorageFile.setnx(path, [*@parents, *keys], val)
end