class Maven::Tools::Jarfile
Attributes
file[R]
Public Class Methods
new(file = 'Jarfile')
click to toggle source
# File lib/maven/tools/jarfile.rb, line 32 def initialize(file = 'Jarfile') @file = file @lockfile = file + ".lock" end
Public Instance Methods
exists?()
click to toggle source
# File lib/maven/tools/jarfile.rb, line 42 def exists? ::File.exists?(@file) end
exists_lock?()
click to toggle source
# File lib/maven/tools/jarfile.rb, line 50 def exists_lock? ::File.exists?(@lockfile) end
generate_lockfile(dependency_coordinates)
click to toggle source
# File lib/maven/tools/jarfile.rb, line 217 def generate_lockfile(dependency_coordinates) if dependency_coordinates.empty? FileUtils.rm_f(@lockfile) if exists_lock? else ::File.open(@lockfile, 'w') do |f| dependency_coordinates.each do |d| f.puts d.to_s unless d.to_s =~ /^ruby.bundler:/ end end end end
load_lockfile()
click to toggle source
# File lib/maven/tools/jarfile.rb, line 54 def load_lockfile _locked = [] if exists_lock? ::File.read(@lockfile).each_line do |line| line.strip! if line.size > 0 && !(line =~ /^\s*#/) _locked << line end end end _locked end
locked()
click to toggle source
# File lib/maven/tools/jarfile.rb, line 67 def locked @locked ||= load_lockfile end
locked?(coordinate)
click to toggle source
# File lib/maven/tools/jarfile.rb, line 71 def locked?(coordinate) coord = coordinate.sub(/^([^:]+:[^:]+):.+/) { $1 } locked.detect { |l| l.sub(/^([^:]+:[^:]+):.+/) { $1 } == coord } != nil end
mtime()
click to toggle source
# File lib/maven/tools/jarfile.rb, line 38 def mtime ::File.mtime(@file) end
mtime_lock()
click to toggle source
# File lib/maven/tools/jarfile.rb, line 46 def mtime_lock ::File.mtime(@lockfile) end
populate_locked(container)
click to toggle source
# File lib/maven/tools/jarfile.rb, line 213 def populate_locked(container) locked.each { |l| container.add_artifact(l) } end
populate_unlocked( container = nil, &block )
click to toggle source
# File lib/maven/tools/jarfile.rb, line 179 def populate_unlocked( container = nil, &block ) warn 'DEPRECATED use Maven::Tools::DSL::Jarfile instead' if ::File.exists?(@file) dsl = Maven::Tools::DSL::Jarfile.new( nil, @file ) if block block.call( dsl ) end # TODO all that container stuff needs to go into jbundler !!! if container dsl.artifacts.each do |a| if path = a[ :system_path ] container.add_local_jar( path ) elsif not locked?( coord = a.to_coordinate ) if exclusions = a.exclusions container.add_artifact_with_exclusions( coord, exclusions ) else container.add_artifact( coord ) end end end dsl.repositories.each do |repo| container.add_repository( repo[ :name ] || repo[ 'name' ], repo[ :url ] || repo[ 'url' ] ) end dsl.snapshot_repositories.each do |repo| container.add_snapshot_repository( repo[ :name ] || repo[ 'name' ], repo[ :url ] || repo[ 'url' ] ) end end end end
setup_locked( parent )
click to toggle source
# File lib/maven/tools/jarfile.rb, line 174 def setup_locked( parent ) warn 'DEPRECATED use Maven::Tools::DSL::Jarfile instead' Maven::Tools::DSL::Jarfile.new( LockedParent.new( parent ), @file ) end
setup_unlocked( parent )
click to toggle source
# File lib/maven/tools/jarfile.rb, line 169 def setup_unlocked( parent ) warn 'DEPRECATED use Maven::Tools::DSL::Jarfile instead' Maven::Tools::DSL::Jarfile.new( parent, @file ) end