Class: PuppetfileResolver::Cache::Persistent
- Defined in:
 - lib/puppetfile-resolver/cache/persistent.rb
 
Instance Method Summary collapse
- #exist?(name) ⇒ Boolean
 - 
  
    
      #initialize(cache_directory)  ⇒ Persistent 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of Persistent.
 - #load(name) ⇒ Object
 - #persist(name, content_string) ⇒ Object
 
Methods inherited from Base
Constructor Details
#initialize(cache_directory) ⇒ Persistent
Returns a new instance of Persistent.
      10 11 12 13 14 15 16 17  | 
    
      # File 'lib/puppetfile-resolver/cache/persistent.rb', line 10 def initialize(cache_directory) super require 'digest' require 'json' @cache_directory = cache_directory Dir.mkdir(@cache_directory) unless Dir.exist?(@cache_directory) end  | 
  
Instance Method Details
#exist?(name) ⇒ Boolean
      19 20 21 22 23 24  | 
    
      # File 'lib/puppetfile-resolver/cache/persistent.rb', line 19 def exist?(name) result = super return result if result filename = File.join(@cache_directory, to_cache_name(name)) File.exist?(filename) end  | 
  
#load(name) ⇒ Object
      26 27 28 29 30 31 32 33 34  | 
    
      # File 'lib/puppetfile-resolver/cache/persistent.rb', line 26 def load(name) result = super return result unless result.nil? filename = File.join(@cache_directory, to_cache_name(name)) return nil unless File.exist?(filename) ::JSON.parse(File.open(filename, 'rb:utf-8') { |f| f.read }) end  | 
  
#persist(name, content_string) ⇒ Object
      36 37 38 39 40 41  | 
    
      # File 'lib/puppetfile-resolver/cache/persistent.rb', line 36 def persist(name, content_string) super filename = File.join(@cache_directory, to_cache_name(name)) File.open(filename, 'wb:utf-8') { |f| f.write(content_string) } end  |