Sha256: 4bf2cc21a3812d3658e0b6a0f8e63f4999cbaa334a0dd3dc226435ca484f1a4a

Contents?: true

Size: 467 Bytes

Versions: 2

Compression:

Stored size: 467 Bytes

Contents

module Writer
  class OverwritePrevention
    def self.adjust(name)
      count = 1

      while File.exists?(name)
        name = append_count(name, count +=1)
      end

      name
    end

    def self.append_count(name, count)
      if (split = name.split('.')).length > 1
        ext = split.last
        split.delete(ext)
        name = split.join('.')
      end

      name = name.gsub(/--\d$/,'')

      [name + "--#{count}", '.', ext].join
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
writer-0.1.0 lib/writer/overwrite_prevention.rb
writer-0.0.4 lib/writer/overwrite_prevention.rb