Class: Zip::FileSystem::ZipFileNameMapper
- Inherits:
-
Object
- Object
- Zip::FileSystem::ZipFileNameMapper
- Includes:
- Enumerable
- Defined in:
- lib/zip/filesystem.rb
Overview
All access to Zip::File 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, permissionInt = nil, &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
Constructor Details
#initialize(zipFile) ⇒ ZipFileNameMapper
Returns a new instance of ZipFileNameMapper.
551 552 553 554 |
# File 'lib/zip/filesystem.rb', line 551 def initialize(zipFile) @zipFile = zipFile @pwd = "/" end |
Instance Attribute Details
#pwd ⇒ Object
Returns the value of attribute pwd.
556 557 558 |
# File 'lib/zip/filesystem.rb', line 556 def pwd @pwd end |
Instance Method Details
#each ⇒ Object
Turns entries into strings and adds leading / and removes trailing slash on directories
593 594 595 596 597 598 |
# File 'lib/zip/filesystem.rb', line 593 def each @zipFile.each { |e| yield("/"+e.to_s.chomp("/")) } end |
#expand_path(aPath) ⇒ Object
600 601 602 603 604 605 |
# File 'lib/zip/filesystem.rb', line 600 def (aPath) = aPath.start_with?("/") ? aPath : ::File.join(@pwd, aPath) .gsub!(/\/\.(\/|$)/, "") .gsub!(/[^\/]+\/\.\.(\/|$)/, "") .empty? ? "/" : end |
#find_entry(fileName) ⇒ Object
558 559 560 |
# File 'lib/zip/filesystem.rb', line 558 def find_entry(fileName) @zipFile.find_entry((fileName)) end |
#get_entry(fileName) ⇒ Object
562 563 564 |
# File 'lib/zip/filesystem.rb', line 562 def get_entry(fileName) @zipFile.get_entry((fileName)) end |
#get_input_stream(fileName, &aProc) ⇒ Object
566 567 568 |
# File 'lib/zip/filesystem.rb', line 566 def get_input_stream(fileName, &aProc) @zipFile.get_input_stream((fileName), &aProc) end |
#get_output_stream(fileName, permissionInt = nil, &aProc) ⇒ Object
570 571 572 |
# File 'lib/zip/filesystem.rb', line 570 def get_output_stream(fileName, = nil, &aProc) @zipFile.get_output_stream((fileName), , &aProc) end |
#mkdir(fileName, permissionInt = 0755) ⇒ Object
587 588 589 |
# File 'lib/zip/filesystem.rb', line 587 def mkdir(fileName, = 0755) @zipFile.mkdir((fileName), ) end |
#read(fileName) ⇒ Object
574 575 576 |
# File 'lib/zip/filesystem.rb', line 574 def read(fileName) @zipFile.read((fileName)) end |
#remove(fileName) ⇒ Object
578 579 580 |
# File 'lib/zip/filesystem.rb', line 578 def remove(fileName) @zipFile.remove((fileName)) end |
#rename(fileName, newName, &continueOnExistsProc) ⇒ Object
582 583 584 585 |
# File 'lib/zip/filesystem.rb', line 582 def rename(fileName, newName, &continueOnExistsProc) @zipFile.rename((fileName), (newName), &continueOnExistsProc) end |