Class: Furoshiki::Jar

Inherits:
Object
  • Object
show all
Defined in:
lib/furoshiki/jar.rb

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ Jar

Returns a new instance of Jar.

Parameters:

  • config (Furoshiki::Shoes::Configuration)

    user configuration



7
8
9
10
11
12
13
14
15
# File 'lib/furoshiki/jar.rb', line 7

def initialize(config)
  @furoshiki_config = config

  unless config.valid?
    raise Furoshiki::ConfigurationError, "Invalid configuration.\n#{config.error_message_list}"
  end

  @config = @furoshiki_config.to_warbler_config
end

Instance Method Details

#default_dirObject



29
30
31
# File 'lib/furoshiki/jar.rb', line 29

def default_dir
  working_dir.join 'pkg'
end

#filenameObject



33
34
35
# File 'lib/furoshiki/jar.rb', line 33

def filename
  "#{@config.jar_name}.#{@config.jar_extension}"
end

#package(dir = default_dir) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/furoshiki/jar.rb', line 17

def package(dir = default_dir)
  Dir.chdir working_dir do
    jar = Warbler::Jar.new
    jar.apply @config
    package_dir = dir.relative_path_from(working_dir)
    package_dir.mkpath
    path = package_dir.join(filename).to_s
    jar.create path
    File.expand_path path
  end
end

#working_dirObject



37
38
39
# File 'lib/furoshiki/jar.rb', line 37

def working_dir
  @furoshiki_config.working_dir
end