Sha256: fc84c59005cae6db3ab0c438ee149f9f89001324d3aaca4fe0bf5e42b240686c
Contents?: true
Size: 1.1 KB
Versions: 3
Compression:
Stored size: 1.1 KB
Contents
module RestFtpDaemon class Path # Class options attr_accessor :name attr_accessor :dir def initialize full, strip_leading_slash = false # Extract path parts @name = extract_filename full.to_s @dir = extract_dirname full.to_s # puts "Path full.to_s: #{full.to_s}" # puts "Path extract_dirname: #{@dir}" # Remove leading slash if needed strip_leading_slash_from_dir! if strip_leading_slash end def full if @dir.nil? || @dir.empty? return @name else return File.join @dir, @name end end def size File.size full if File.exist? full end private def extract_filename path # match everything that's after a slash at the end of the string m = path.match(/\/?([^\/]+)$/) return m[1].to_s unless m.nil? end def extract_dirname path # match all the beginning of the string up to the last slash m = path.match(/^(.*)\/[^\/]*$/) return m[1].to_s unless m.nil? end def strip_leading_slash_from_dir! @dir.to_s.gsub!(/^\//, '') end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rest-ftp-daemon-0.410.2 | lib/rest-ftp-daemon/path.rb |
rest-ftp-daemon-0.410.1 | lib/rest-ftp-daemon/path.rb |
rest-ftp-daemon-0.410.0.pre.1 | lib/rest-ftp-daemon/path.rb |