Sha256: e6a1d798d9fe7eb12a3f48debee54053c8c858c7afda1ded71ff6602e2da29dc
Contents?: true
Size: 954 Bytes
Versions: 5
Compression:
Stored size: 954 Bytes
Contents
module TinyMCE::Rails class ConfigurationFile attr_reader :path def initialize(path) @path = path end def configuration @configuration = load_configuration if reload? @configuration end def reload? @configuration.nil? || (reloadable? && changed?) end def changed? @last_loaded != last_updated end private def reloadable? !::Rails.application.config.cache_classes end def last_updated File.exist?(path) && File.mtime(path) end def load_configuration @last_loaded = last_updated return Configuration.new_with_defaults if !File.exist?(path) options = load_yaml(path) if options && options.has_key?('default') MultipleConfiguration.new(options) else Configuration.new_with_defaults(options) end end def load_yaml(path) YAML::load(ERB.new(IO.read(path)).result) end end end
Version data entries
5 entries across 5 versions & 1 rubygems