class Uricp::Strategy::CachedGet

Public Instance Methods

appropriate?() click to toggle source
# File lib/uricp/strategy/cached_get.rb, line 8
def appropriate?
  if cache_root
    validate_cache!
    return proposal if in_cache? || file_source?

    debug "#{self.class.name}: no cache entry for #{options['from_uri']}"
  else
    debug "#{self.class.name}: not appropriate"
  end
  false
end
command() click to toggle source
# File lib/uricp/strategy/cached_get.rb, line 20
def command
  ':;'
end
proposal() click to toggle source
# File lib/uricp/strategy/cached_get.rb, line 24
def proposal
  @proposed_options = options.dup
  @proposed_options['from_uri'] = URI.join('file:///', cache_file) unless file_source?
  @proposed_options.delete('cache')
  @proposed_options.delete('cache_name')
  if conversion_required?
    unless dry_run?
      @proposed_options['source-format'] =
        File.open(@proposed_options['from_uri'].path) { |f| encoding(f) }
    end
    if @proposed_options['source-format'] == @proposed_options['target-format']
      @proposed_options.delete('source-format')
      @proposed_options.delete('target-format')
    end
  end
  self
end