Class: Sparrowhawk::War

Inherits:
Object
  • Object
show all
Defined in:
lib/sparrowhawk/war.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(file_name = nil) ⇒ War

Returns a new instance of War.



9
10
11
12
# File 'lib/sparrowhawk/war.rb', line 9

def initialize file_name=nil
  @name = file_name || default_file_name
  @entries = []
end

Instance Attribute Details

#entriesObject (readonly)

Returns the value of attribute entries.



7
8
9
# File 'lib/sparrowhawk/war.rb', line 7

def entries
  @entries
end

#nameObject (readonly)

Returns the value of attribute name.



7
8
9
# File 'lib/sparrowhawk/war.rb', line 7

def name
  @name
end

Instance Method Details

#buildObject



24
25
26
27
28
29
30
31
# File 'lib/sparrowhawk/war.rb', line 24

def build
  open_war for_writing do |zip|
    entries.flatten.each do |entry|
      zip.file.open(entry.name, "w") { |f| f << entry.content }
    end
  end
  self
end

#exist?Boolean Also known as: exists?

Returns:

  • (Boolean)


14
15
16
# File 'lib/sparrowhawk/war.rb', line 14

def exist?
  File.exist? name
end

#has_entry?(entry_name) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
# File 'lib/sparrowhawk/war.rb', line 19

def has_entry? entry_name
  return false unless exists?
  open_war { |zip| zip.file.exists?(entry_name) }
end