Class: EzConfig::ConfigResolver

Inherits:
Object
  • Object
show all
Defined in:
lib/prefab/config_resolver.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ ConfigResolver

Returns a new instance of ConfigResolver.



4
5
6
7
8
9
10
# File 'lib/prefab/config_resolver.rb', line 4

def initialize(client)
  @lock = Concurrent::ReadWriteLock.new
  @local_store = {}
  @namespace = client.namespace
  @config_loader = EzConfig::ConfigLoader.new(client.logger)
  make_local
end

Instance Method Details

#get(property) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/prefab/config_resolver.rb', line 12

def get(property)
  value = @lock.with_read_lock do
    @local_store[property][:value]
  end
  case value.type
  when :string then
    puts "SSString"
    value.string
  when :int then
    puts "INT"
    value.int
  end
end

#set(delta) ⇒ Object



26
27
28
# File 'lib/prefab/config_resolver.rb', line 26

def set(delta)
  @config_loader.set(delta)
end

#update ⇒ Object



30
31
32
# File 'lib/prefab/config_resolver.rb', line 30

def update
  make_local
end