Sha256: 5b24f310f0b33724ad928aeffdac5bcfcd9f06b866979239828ddd920f9fc87b
Contents?: true
Size: 1.6 KB
Versions: 2
Compression:
Stored size: 1.6 KB
Contents
# # Copyright (c) 2014-2017 Minero Aoki, Kenshi Muto, Masayoshi Takahashi # # This program is free software. # You can distribute or modify this program under the terms of # the GNU LGPL, Lesser General Public License version 2.1. # For details of LGPL, see the file "COPYING". # require 'review/extentions' require 'review/exception' module ReVIEW module Book class ImageFinder def initialize(basedir, chapid, builder, exts) @basedir = basedir @chapid = chapid @builder = builder @exts = exts @entries = dir_entries end def dir_entries Dir.glob(File.join(@basedir, '**{,/*/**}/*.*')).uniq end def add_entry(path) @entries << path unless @entries.include?(path) @entries end def find_path(id) targets = target_list(id) targets.each do |target| @exts.each { |ext| return "#{target}#{ext}" if @entries.include?("#{target}#{ext}") } end nil end def target_list(id) [ # 1. <basedir>/<builder>/<chapid>/<id>.<ext> "#{@basedir}/#{@builder}/#{@chapid}/#{id}", # 2. <basedir>/<builder>/<chapid>-<id>.<ext> "#{@basedir}/#{@builder}/#{@chapid}-#{id}", # 3. <basedir>/<builder>/<id>.<ext> "#{@basedir}/#{@builder}/#{id}", # 4. <basedir>/<chapid>/<id>.<ext> "#{@basedir}/#{@chapid}/#{id}", # 5. <basedir>/<chapid>-<id>.<ext> "#{@basedir}/#{@chapid}-#{id}", # 6. <basedir>/<id>.<ext> "#{@basedir}/#{id}" ] end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
review-2.5.0 | lib/review/book/image_finder.rb |
review-2.4.0 | lib/review/book/image_finder.rb |