Class: ZipDSL
- Inherits:
-
Object
- Object
- ZipDSL
- Defined in:
- lib/zip_dsl/version.rb,
lib/zip_dsl/zip_dsl.rb
Constant Summary collapse
- VERSION =
"1.5.1"
Instance Attribute Summary collapse
-
#from_dir ⇒ Object
readonly
Returns the value of attribute from_dir.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Instance Method Summary collapse
- #build(name = nil, &execute_block) ⇒ Object
- #each_entry(dir = ".", &code) ⇒ Object
- #entries_size ⇒ Object
- #entry_exist?(entry_name) ⇒ Boolean
-
#initialize(name, from_dir = ".", params = {}) ⇒ ZipDSL
constructor
A new instance of ZipDSL.
- #list(dir = ".") ⇒ Object
Constructor Details
#initialize(name, from_dir = ".", params = {}) ⇒ ZipDSL
Returns a new instance of ZipDSL.
6 7 8 9 10 11 12 13 14 |
# File 'lib/zip_dsl/zip_dsl.rb', line 6 def initialize name, from_dir=".", params={} @name = name @from_dir = File.(from_dir) @includes = params[:includes] @excludes = params[:excludes] to_root = File.(File.dirname(name)) FileUtils.mkdir_p(to_root) unless File.exists? to_root end |
Instance Attribute Details
#from_dir ⇒ Object (readonly)
Returns the value of attribute from_dir.
4 5 6 |
# File 'lib/zip_dsl/zip_dsl.rb', line 4 def from_dir @from_dir end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
4 5 6 |
# File 'lib/zip_dsl/zip_dsl.rb', line 4 def name @name end |
Instance Method Details
#build(name = nil, &execute_block) ⇒ Object
16 17 18 19 20 21 22 23 |
# File 'lib/zip_dsl/zip_dsl.rb', line 16 def build(name=nil, &execute_block) name = name.nil? ? @name : name create_block = lambda { ZipWriter.new(name, from_dir, @includes, @excludes) } destroy_block = lambda {|writer| writer.close } MetaMethods::DslBuilder.instance.evaluate_dsl(create_block, destroy_block, execute_block) end |
#each_entry(dir = ".", &code) ⇒ Object
49 50 51 52 53 54 55 |
# File 'lib/zip_dsl/zip_dsl.rb', line 49 def each_entry dir=".", &code create_block = lambda { ZipReader.new(name) } destroy_block = lambda {|reader| reader.close } execute_block = lambda { |reader| reader.each_entry(dir, &code) } MetaMethods::DslBuilder.instance.evaluate_dsl(create_block, destroy_block, execute_block) end |
#entries_size ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/zip_dsl/zip_dsl.rb', line 33 def entries_size create_block = lambda { ZipReader.new(name) } destroy_block = lambda {|reader| reader.close } execute_block = lambda { |reader| reader.entries_size } MetaMethods::DslBuilder.instance.evaluate_dsl(create_block, destroy_block, execute_block) end |
#entry_exist?(entry_name) ⇒ Boolean
25 26 27 28 29 30 31 |
# File 'lib/zip_dsl/zip_dsl.rb', line 25 def entry_exist? entry_name create_block = lambda { ZipReader.new(name) } destroy_block = lambda {|reader| reader.close } execute_block = lambda { |reader| reader.entry_exist?(entry_name) } MetaMethods::DslBuilder.instance.evaluate_dsl(create_block, destroy_block, execute_block) end |
#list(dir = ".") ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/zip_dsl/zip_dsl.rb', line 41 def list dir="." create_block = lambda { ZipReader.new(name) } destroy_block = lambda {|reader| reader.close } execute_block = lambda { |reader| reader.list(dir) } MetaMethods::DslBuilder.instance.evaluate_dsl(create_block, destroy_block, execute_block) end |