diaspora/lib/configuration/provider/dynamic.rb
Jonne Haß 2a4db54db9 New configuration system
* Throw away old system
* Add new system
* Add new example files
* Replace all calls
* add the most important docs
* Add Specs
* rename disable_ssl_requirement to require_ssl
* cloudfiles isn't used/called in our code
* since community_spotlight.list is only used as enable flag replace it with such one and remove all legacy and irelevant codepaths around it
* die if session secret is unset and on heroku
* First basic infrastructure for version information
2012-09-26 20:19:37 +02:00

24 lines
698 B
Ruby

module Configuration::Provider
# This provider knows nothing upon initialization, however if you access
# a setting ending with +=+ and give one argument to that call it remembers
# that setting, stripping the +=+ and will return it on the next call
# without +=+.
class Dynamic < Base
def initialize
@settings = {}
end
def lookup_path(settings_path, *args)
key = settings_path.join(".")
if key.end_with?("=") && args.length > 0
key = key.chomp("=")
value = args.first
value = value.get if value.respond_to?(:_proxy?) && value._proxy?
@settings[key] = value
end
@settings[key]
end
end
end