Class: Zip::ZipFileSystem::ZipFileNameMapper
- Includes:
- Enumerable
- Defined in:
- lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb
Overview
All access to ZipFile from ZipFsFile and ZipFsDir goes through a ZipFileNameMapper, which has one responsibility: ensure
Instance Attribute Summary collapse
-
#pwd ⇒ Object
Returns the value of attribute pwd.
Instance Method Summary collapse
-
#each ⇒ Object
Turns entries into strings and adds leading / and removes trailing slash on directories.
- #expand_path(aPath) ⇒ Object
- #find_entry(fileName) ⇒ Object
- #get_entry(fileName) ⇒ Object
- #get_input_stream(fileName, &aProc) ⇒ Object
- #get_output_stream(fileName, &aProc) ⇒ Object
-
#initialize(zipFile) ⇒ ZipFileNameMapper
constructor
A new instance of ZipFileNameMapper.
- #mkdir(fileName, permissionInt = 0755) ⇒ Object
- #read(fileName) ⇒ Object
- #remove(fileName) ⇒ Object
- #rename(fileName, newName, &continueOnExistsProc) ⇒ Object
Methods included from Enumerable
Constructor Details
#initialize(zipFile) ⇒ ZipFileNameMapper
Returns a new instance of ZipFileNameMapper.
559 560 561 562 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 559 def initialize(zipFile) @zipFile = zipFile @pwd = "/" end |
Instance Attribute Details
#pwd ⇒ Object
Returns the value of attribute pwd.
564 565 566 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 564 def pwd @pwd end |
Instance Method Details
#each ⇒ Object
Turns entries into strings and adds leading / and removes trailing slash on directories
601 602 603 604 605 606 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 601 def each @zipFile.each { |e| yield("/"+e.to_s.chomp("/")) } end |
#expand_path(aPath) ⇒ Object
608 609 610 611 612 613 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 608 def (aPath) = aPath.starts_with("/") ? aPath : @pwd.ensure_end("/") + aPath .gsub!(/\/\.(\/|$)/, "") .gsub!(/[^\/]+\/\.\.(\/|$)/, "") .empty? ? "/" : end |
#find_entry(fileName) ⇒ Object
566 567 568 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 566 def find_entry(fileName) @zipFile.find_entry((fileName)) end |
#get_entry(fileName) ⇒ Object
570 571 572 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 570 def get_entry(fileName) @zipFile.get_entry((fileName)) end |
#get_input_stream(fileName, &aProc) ⇒ Object
574 575 576 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 574 def get_input_stream(fileName, &aProc) @zipFile.get_input_stream((fileName), &aProc) end |
#get_output_stream(fileName, &aProc) ⇒ Object
578 579 580 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 578 def get_output_stream(fileName, &aProc) @zipFile.get_output_stream((fileName), &aProc) end |
#mkdir(fileName, permissionInt = 0755) ⇒ Object
595 596 597 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 595 def mkdir(fileName, = 0755) @zipFile.mkdir((fileName), ) end |
#read(fileName) ⇒ Object
582 583 584 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 582 def read(fileName) @zipFile.read((fileName)) end |
#remove(fileName) ⇒ Object
586 587 588 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 586 def remove(fileName) @zipFile.remove((fileName)) end |
#rename(fileName, newName, &continueOnExistsProc) ⇒ Object
590 591 592 593 |
# File 'lib/ruby_archive/handlers/rubyzip/zip/zipfilesystem.rb', line 590 def rename(fileName, newName, &continueOnExistsProc) @zipFile.rename((fileName), (newName), &continueOnExistsProc) end |