class Maven::Tools::GemspecDependencies

Public Class Methods

new( gemspec ) click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 7
def initialize( gemspec )
  if gemspec.is_a? String
    warn 'DEPRECATED use Maven::Tools::DSL::Gemspec instead'
    @spec = Gem::Specification.load( gemspec )
  else
    @spec = gemspec
  end
  _setup
end

Public Instance Methods

development() click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 38
def development
  _deps( :development )
end
java_dependencies() click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 22
def java_dependencies
  warn 'deprecated us java_dependency_artifacts instead'
  _deps( :java )
end
java_dependency_artifacts() click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 27
def java_dependency_artifacts
  _deps( :java ).collect do |d|
    scope = d.shift
    d += [nil, nil, { :scope => scope } ][ (d.size - 4 )..2 ]
    Maven::Tools::Artifact.new( *d )
  end
end
java_runtime() click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 17
def java_runtime
  warn 'deprecated us java_dependency_artifacts instead'
  _deps( :java ).select { |d| d[0] == :compile }.collect { |d| d[ 1..-1] }
end
runtime() click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 34
def runtime
  _deps( :runtime )
end

Private Instance Methods

_deps( type ) click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 46
def _deps( type )
  @deps ||= {}
  @deps[ type ] ||= []
end
_setup() click to toggle source
# File lib/maven/tools/gemspec_dependencies.rb, line 51
def _setup
  @spec.dependencies.each do |dep|
    versions = dep.requirement.requirements.collect do |req|
      # use this construct to get the same result in 1.8.x and 1.9.x
      req.collect{ |i| i.to_s }.join
    end
    _deps( dep.type ) << "rubygems:#{dep.name}:#{to_version( *versions )}"
  end
  @spec.requirements.each do |req|
    coord = to_split_coordinate_with_scope(req.sub(/#.*^/, ''))
    if coord && coord.size > 1
      _deps( :java ) << coord
    end
  end
end