ivy4r 0.12.8 → 0.12.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +3 -0
 - data/lib/buildr/ivy_extension.rb +257 -257
 - data/lib/ivy/install.rb +33 -0
 - data/lib/ivy/targets.rb +49 -48
 - data/lib/ivy4r.rb +5 -0
 - data/lib/ivy4r/version.rb +1 -1
 - metadata +4 -3
 
    
        data/CHANGELOG
    CHANGED
    
    | 
         @@ -1,3 +1,6 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            === 0.12.9 / 2011-01-17
         
     | 
| 
      
 2 
     | 
    
         
            +
              * Added missing 'install' target, use it as defined in Ivy documentation
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
       1 
4 
     | 
    
         
             
            === 0.12.8 / 2011-01-14
         
     | 
| 
       2 
5 
     | 
    
         
             
              * Converted all tests to RSpec2 specs and grouped them according to functional and normal spec
         
     | 
| 
       3 
6 
     | 
    
         
             
              * Started adding more specs to get a descent test coverage
         
     | 
    
        data/lib/buildr/ivy_extension.rb
    CHANGED
    
    | 
         @@ -471,32 +471,32 @@ module Buildr 
     | 
|
| 
       471 
471 
     | 
    
         
             
                  def valid_config_call?(method_name)
         
     | 
| 
       472 
472 
     | 
    
         
             
                    valid_calls = []
         
     | 
| 
       473 
473 
     | 
    
         
             
                    TYPES.each do|type|
         
     | 
| 
       474 
     | 
    
         
            -
             
     | 
| 
       475 
     | 
    
         
            -
             
     | 
| 
      
 474 
     | 
    
         
            +
                      TARGETS.each do|target|
         
     | 
| 
      
 475 
     | 
    
         
            +
                        valid_calls << type.to_s << target.to_s << "#{type}_#{target}" << "#{target}_#{type}"
         
     | 
| 
      
 476 
     | 
    
         
            +
                      end
         
     | 
| 
      
 477 
     | 
    
         
            +
                    end
         
     | 
| 
      
 478 
     | 
    
         
            +
                    valid_calls.member? method_name.to_s
         
     | 
| 
       476 
479 
     | 
    
         
             
                  end
         
     | 
| 
       477 
     | 
    
         
            -
                end
         
     | 
| 
       478 
     | 
    
         
            -
                valid_calls.member? method_name.to_s
         
     | 
| 
       479 
     | 
    
         
            -
              end
         
     | 
| 
       480 
480 
     | 
    
         | 
| 
       481 
     | 
    
         
            -
             
     | 
| 
       482 
     | 
    
         
            -
             
     | 
| 
       483 
     | 
    
         
            -
             
     | 
| 
       484 
     | 
    
         
            -
             
     | 
| 
       485 
     | 
    
         
            -
             
     | 
| 
       486 
     | 
    
         
            -
             
     | 
| 
       487 
     | 
    
         
            -
             
     | 
| 
       488 
     | 
    
         
            -
             
     | 
| 
       489 
     | 
    
         
            -
             
     | 
| 
       490 
     | 
    
         
            -
             
     | 
| 
       491 
     | 
    
         
            -
             
     | 
| 
       492 
     | 
    
         
            -
             
     | 
| 
       493 
     | 
    
         
            -
             
     | 
| 
       494 
     | 
    
         
            -
             
     | 
| 
      
 481 
     | 
    
         
            +
                  # Sets a variable for given basename and type to given values. If values are empty returns the
         
     | 
| 
      
 482 
     | 
    
         
            +
                  # current value.
         
     | 
| 
      
 483 
     | 
    
         
            +
                  # I.e. <tt>handle_variable(:package, :include, /blua.*\.jar/, /da.*\.jar/)</tt>
         
     | 
| 
      
 484 
     | 
    
         
            +
                  def handle_variable(target, type, *values)
         
     | 
| 
      
 485 
     | 
    
         
            +
                    unless TARGETS.member?(target) && TYPES.member?(type)
         
     | 
| 
      
 486 
     | 
    
         
            +
                      raise ArgumentError, "Unknown config value for target #{target.inspect} and type #{type.inspect}"
         
     | 
| 
      
 487 
     | 
    
         
            +
                    end
         
     | 
| 
      
 488 
     | 
    
         
            +
                    if values.empty?
         
     | 
| 
      
 489 
     | 
    
         
            +
                      @target_config[target][type] ||= [Ivy.setting("#{target.to_s}.#{type.to_s}") || ''].flatten.uniq
         
     | 
| 
      
 490 
     | 
    
         
            +
                    else
         
     | 
| 
      
 491 
     | 
    
         
            +
                      @target_config[target][type] = [values].flatten.uniq
         
     | 
| 
      
 492 
     | 
    
         
            +
                      self
         
     | 
| 
      
 493 
     | 
    
         
            +
                    end
         
     | 
| 
      
 494 
     | 
    
         
            +
                  end
         
     | 
| 
       495 
495 
     | 
    
         | 
| 
       496 
     | 
    
         
            -
             
     | 
| 
       497 
     | 
    
         
            -
             
     | 
| 
       498 
     | 
    
         
            -
             
     | 
| 
       499 
     | 
    
         
            -
            end
         
     | 
| 
      
 496 
     | 
    
         
            +
                  def post_resolve_tasks
         
     | 
| 
      
 497 
     | 
    
         
            +
                    @base_ivy ? @base_ivy.post_resolve_task_list : post_resolve_task_list
         
     | 
| 
      
 498 
     | 
    
         
            +
                  end
         
     | 
| 
      
 499 
     | 
    
         
            +
                end
         
     | 
| 
       500 
500 
     | 
    
         | 
| 
       501 
501 
     | 
    
         
             
            =begin rdoc
         
     | 
| 
       502 
502 
     | 
    
         
             
            The Ivy Buildr extension adding the new tasks for ivy.
         
     | 
| 
         @@ -518,290 +518,290 @@ To use ivy in a +buildfile+ do something like: 
     | 
|
| 
       518 
518 
     | 
    
         | 
| 
       519 
519 
     | 
    
         
             
            For more configuration options see IvyConfig.
         
     | 
| 
       520 
520 
     | 
    
         
             
            =end
         
     | 
| 
       521 
     | 
    
         
            -
            module IvyExtension
         
     | 
| 
       522 
     | 
    
         
            -
             
     | 
| 
      
 521 
     | 
    
         
            +
                module IvyExtension
         
     | 
| 
      
 522 
     | 
    
         
            +
                  include Buildr::Extension
         
     | 
| 
       523 
523 
     | 
    
         | 
| 
       524 
     | 
    
         
            -
             
     | 
| 
      
 524 
     | 
    
         
            +
                  class << self
         
     | 
| 
       525 
525 
     | 
    
         | 
| 
       526 
     | 
    
         
            -
             
     | 
| 
       527 
     | 
    
         
            -
             
     | 
| 
       528 
     | 
    
         
            -
             
     | 
| 
       529 
     | 
    
         
            -
             
     | 
| 
       530 
     | 
    
         
            -
             
     | 
| 
       531 
     | 
    
         
            -
             
     | 
| 
       532 
     | 
    
         
            -
             
     | 
| 
       533 
     | 
    
         
            -
             
     | 
| 
       534 
     | 
    
         
            -
             
     | 
| 
       535 
     | 
    
         
            -
             
     | 
| 
       536 
     | 
    
         
            -
             
     | 
| 
       537 
     | 
    
         
            -
             
     | 
| 
       538 
     | 
    
         
            -
             
     | 
| 
      
 526 
     | 
    
         
            +
                    def add_ivy_deps_to_java_tasks(project)
         
     | 
| 
      
 527 
     | 
    
         
            +
                      resolve_target = project.ivy.file_project.task('ivy:resolve')
         
     | 
| 
      
 528 
     | 
    
         
            +
                      project.task :compiledeps => resolve_target do
         
     | 
| 
      
 529 
     | 
    
         
            +
                        includes = project.ivy.compile_include
         
     | 
| 
      
 530 
     | 
    
         
            +
                        excludes = project.ivy.compile_exclude
         
     | 
| 
      
 531 
     | 
    
         
            +
                        types = project.ivy.compile_type
         
     | 
| 
      
 532 
     | 
    
         
            +
                        confs = [project.ivy.compile_conf].flatten
         
     | 
| 
      
 533 
     | 
    
         
            +
                        if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
         
     | 
| 
      
 534 
     | 
    
         
            +
                          project.compile.with [deps, project.compile.dependencies].flatten
         
     | 
| 
      
 535 
     | 
    
         
            +
                          sort_dependencies(project.compile.dependencies, deps, project.path_to(''))
         
     | 
| 
      
 536 
     | 
    
         
            +
                          info "Ivy adding compile dependencies '#{confs.join(', ')}' to project '#{project.name}'"
         
     | 
| 
      
 537 
     | 
    
         
            +
                        end
         
     | 
| 
      
 538 
     | 
    
         
            +
                      end
         
     | 
| 
       539 
539 
     | 
    
         | 
| 
       540 
     | 
    
         
            -
             
     | 
| 
      
 540 
     | 
    
         
            +
                      project.task :compile => "#{project.name}:compiledeps"
         
     | 
| 
      
 541 
     | 
    
         
            +
                  
         
     | 
| 
      
 542 
     | 
    
         
            +
                      project.task :testdeps => resolve_target do
         
     | 
| 
      
 543 
     | 
    
         
            +
                        includes = project.ivy.test_include
         
     | 
| 
      
 544 
     | 
    
         
            +
                        excludes = project.ivy.test_exclude
         
     | 
| 
      
 545 
     | 
    
         
            +
                        types = project.ivy.test_type
         
     | 
| 
      
 546 
     | 
    
         
            +
                        confs = [project.ivy.test_conf, project.ivy.compile_conf].flatten.uniq
         
     | 
| 
      
 547 
     | 
    
         
            +
                        if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
         
     | 
| 
      
 548 
     | 
    
         
            +
                          project.test.with [deps, project.test.dependencies].flatten
         
     | 
| 
      
 549 
     | 
    
         
            +
                          sort_dependencies(project.test.dependencies, deps, project.path_to(''))
         
     | 
| 
      
 550 
     | 
    
         
            +
                          sort_dependencies(project.test.compile.dependencies, deps, project.path_to(''))
         
     | 
| 
      
 551 
     | 
    
         
            +
                          info "Ivy adding test dependencies '#{confs.join(', ')}' to project '#{project.name}'"
         
     | 
| 
      
 552 
     | 
    
         
            +
                        end
         
     | 
| 
      
 553 
     | 
    
         
            +
                      end
         
     | 
| 
      
 554 
     | 
    
         
            +
                      project.task "test:compile" => "#{project.name}:testdeps"
         
     | 
| 
       541 
555 
     | 
    
         | 
| 
       542 
     | 
    
         
            -
             
     | 
| 
       543 
     | 
    
         
            -
             
     | 
| 
       544 
     | 
    
         
            -
             
     | 
| 
       545 
     | 
    
         
            -
             
     | 
| 
       546 
     | 
    
         
            -
             
     | 
| 
       547 
     | 
    
         
            -
             
     | 
| 
       548 
     | 
    
         
            -
                       
     | 
| 
       549 
     | 
    
         
            -
                       
     | 
| 
       550 
     | 
    
         
            -
                      sort_dependencies(project.test.compile.dependencies, deps, project.path_to(''))
         
     | 
| 
       551 
     | 
    
         
            -
                      info "Ivy adding test dependencies '#{confs.join(', ')}' to project '#{project.name}'"
         
     | 
| 
       552 
     | 
    
         
            -
                    end
         
     | 
| 
       553 
     | 
    
         
            -
                  end
         
     | 
| 
       554 
     | 
    
         
            -
                  project.task "test:compile" => "#{project.name}:testdeps"
         
     | 
| 
      
 556 
     | 
    
         
            +
                      project.task :javadocdeps => resolve_target do
         
     | 
| 
      
 557 
     | 
    
         
            +
                        confs = [project.ivy.test_conf, project.ivy.compile_conf].flatten.uniq
         
     | 
| 
      
 558 
     | 
    
         
            +
                        if deps = project.ivy.deps(confs)
         
     | 
| 
      
 559 
     | 
    
         
            +
                          project.javadoc.with deps
         
     | 
| 
      
 560 
     | 
    
         
            +
                          info "Ivy adding javadoc dependencies '#{confs.join(', ')}' to project '#{project.name}'"
         
     | 
| 
      
 561 
     | 
    
         
            +
                        end
         
     | 
| 
      
 562 
     | 
    
         
            +
                      end
         
     | 
| 
      
 563 
     | 
    
         
            +
                      project.task :javadoc => "#{project.name}:javadocdeps"
         
     | 
| 
       555 
564 
     | 
    
         | 
| 
       556 
     | 
    
         
            -
             
     | 
| 
       557 
     | 
    
         
            -
             
     | 
| 
       558 
     | 
    
         
            -
             
     | 
| 
       559 
     | 
    
         
            -
                      project.javadoc.with deps
         
     | 
| 
       560 
     | 
    
         
            -
                      info "Ivy adding javadoc dependencies '#{confs.join(', ')}' to project '#{project.name}'"
         
     | 
| 
      
 565 
     | 
    
         
            +
                      [project.task(:eclipse), project.task(:idea), project.task(:idea7x)].each do |task|
         
     | 
| 
      
 566 
     | 
    
         
            +
                        task.prerequisites.each{|p| p.enhance ["#{project.name}:compiledeps", "#{project.name}:testdeps"]}
         
     | 
| 
      
 567 
     | 
    
         
            +
                      end
         
     | 
| 
       561 
568 
     | 
    
         
             
                    end
         
     | 
| 
       562 
     | 
    
         
            -
                  end
         
     | 
| 
       563 
     | 
    
         
            -
                  project.task :javadoc => "#{project.name}:javadocdeps"
         
     | 
| 
       564 
     | 
    
         
            -
                  
         
     | 
| 
       565 
     | 
    
         
            -
                  [project.task(:eclipse), project.task(:idea), project.task(:idea7x)].each do |task|
         
     | 
| 
       566 
     | 
    
         
            -
                    task.prerequisites.each{|p| p.enhance ["#{project.name}:compiledeps", "#{project.name}:testdeps"]}
         
     | 
| 
       567 
     | 
    
         
            -
                  end
         
     | 
| 
       568 
     | 
    
         
            -
                end
         
     | 
| 
       569 
569 
     | 
    
         | 
| 
       570 
     | 
    
         
            -
             
     | 
| 
       571 
     | 
    
         
            -
             
     | 
| 
       572 
     | 
    
         
            -
             
     | 
| 
       573 
     | 
    
         
            -
             
     | 
| 
       574 
     | 
    
         
            -
             
     | 
| 
       575 
     | 
    
         
            -
             
     | 
| 
       576 
     | 
    
         
            -
             
     | 
| 
       577 
     | 
    
         
            -
             
     | 
| 
       578 
     | 
    
         
            -
             
     | 
| 
       579 
     | 
    
         
            -
             
     | 
| 
       580 
     | 
    
         
            -
             
     | 
| 
       581 
     | 
    
         
            -
             
     | 
| 
       582 
     | 
    
         
            -
             
     | 
| 
       583 
     | 
    
         
            -
             
     | 
| 
      
 570 
     | 
    
         
            +
                    # Sorts the dependencies in #deps replacing the old order.
         
     | 
| 
      
 571 
     | 
    
         
            +
                    # Sorting is done as follows:
         
     | 
| 
      
 572 
     | 
    
         
            +
                    # 1. all dependencies that belong to the project identified by #project_path,
         
     | 
| 
      
 573 
     | 
    
         
            +
                    #    .i.e. instrumented-classes, resources in the order the are contained in the array
         
     | 
| 
      
 574 
     | 
    
         
            +
                    # 2. all ivy dependencies identified by #ivy_deps
         
     | 
| 
      
 575 
     | 
    
         
            +
                    # 3. all dependencies added automatically by buildr
         
     | 
| 
      
 576 
     | 
    
         
            +
                    def sort_dependencies(deps, ivy_deps, project_path)
         
     | 
| 
      
 577 
     | 
    
         
            +
                      old_deps = deps.dup
         
     | 
| 
      
 578 
     | 
    
         
            +
                      belongs_to_project = /#{project_path}/
         
     | 
| 
      
 579 
     | 
    
         
            +
                      deps.sort! do |a, b|
         
     | 
| 
      
 580 
     | 
    
         
            +
                        a_belongs_to_project = belongs_to_project.match(a.to_s)
         
     | 
| 
      
 581 
     | 
    
         
            +
                        b_belongs_to_project = belongs_to_project.match(b.to_s)
         
     | 
| 
      
 582 
     | 
    
         
            +
                        a_ivy = ivy_deps.member? a
         
     | 
| 
      
 583 
     | 
    
         
            +
                        b_ivy = ivy_deps.member? b
         
     | 
| 
       584 
584 
     | 
    
         | 
| 
       585 
     | 
    
         
            -
             
     | 
| 
       586 
     | 
    
         
            -
             
     | 
| 
       587 
     | 
    
         
            -
             
     | 
| 
       588 
     | 
    
         
            -
             
     | 
| 
       589 
     | 
    
         
            -
             
     | 
| 
       590 
     | 
    
         
            -
             
     | 
| 
       591 
     | 
    
         
            -
             
     | 
| 
       592 
     | 
    
         
            -
             
     | 
| 
       593 
     | 
    
         
            -
             
     | 
| 
       594 
     | 
    
         
            -
             
     | 
| 
      
 585 
     | 
    
         
            +
                        if a_belongs_to_project && !b_belongs_to_project
         
     | 
| 
      
 586 
     | 
    
         
            +
                          -1
         
     | 
| 
      
 587 
     | 
    
         
            +
                        elsif !a_belongs_to_project && b_belongs_to_project
         
     | 
| 
      
 588 
     | 
    
         
            +
                          1
         
     | 
| 
      
 589 
     | 
    
         
            +
                        elsif a_ivy && !b_ivy
         
     | 
| 
      
 590 
     | 
    
         
            +
                          -1
         
     | 
| 
      
 591 
     | 
    
         
            +
                        elsif !a_ivy && b_ivy
         
     | 
| 
      
 592 
     | 
    
         
            +
                          1
         
     | 
| 
      
 593 
     | 
    
         
            +
                        else
         
     | 
| 
      
 594 
     | 
    
         
            +
                          old_deps.index(a) <=> old_deps.index(b)
         
     | 
| 
      
 595 
     | 
    
         
            +
                        end
         
     | 
| 
      
 596 
     | 
    
         
            +
                      end
         
     | 
| 
       595 
597 
     | 
    
         
             
                    end
         
     | 
| 
       596 
     | 
    
         
            -
                  end
         
     | 
| 
       597 
     | 
    
         
            -
                end
         
     | 
| 
       598 
598 
     | 
    
         | 
| 
       599 
     | 
    
         
            -
             
     | 
| 
       600 
     | 
    
         
            -
             
     | 
| 
       601 
     | 
    
         
            -
             
     | 
| 
       602 
     | 
    
         
            -
             
     | 
| 
       603 
     | 
    
         
            -
             
     | 
| 
       604 
     | 
    
         
            -
             
     | 
| 
       605 
     | 
    
         
            -
             
     | 
| 
       606 
     | 
    
         
            -
             
     | 
| 
       607 
     | 
    
         
            -
             
     | 
| 
       608 
     | 
    
         
            -
             
     | 
| 
      
 599 
     | 
    
         
            +
                    def add_manifest_to_distributeables(project)
         
     | 
| 
      
 600 
     | 
    
         
            +
                      pkgs = project.packages.find_all { |pkg| ['jar', 'war', 'ear'].member? pkg.type.to_s }
         
     | 
| 
      
 601 
     | 
    
         
            +
                      pkgs.each do |pkg|
         
     | 
| 
      
 602 
     | 
    
         
            +
                        name = "#{pkg.name}manifest"
         
     | 
| 
      
 603 
     | 
    
         
            +
                        task = project.task name => project.ivy.file_project.task('ivy:resolve') do
         
     | 
| 
      
 604 
     | 
    
         
            +
                          if pkg.manifest # source jars have no manifest, only add to existing manifest files
         
     | 
| 
      
 605 
     | 
    
         
            +
                            pkg.with :manifest => pkg.manifest.merge(project.manifest.merge(project.ivy.manifest))
         
     | 
| 
      
 606 
     | 
    
         
            +
                            info "Adding manifest entries to package '#{pkg.name}'"
         
     | 
| 
      
 607 
     | 
    
         
            +
                          else
         
     | 
| 
      
 608 
     | 
    
         
            +
                            info "Could not merge info to package '#{pkg.to_s}' it has no manifest!"
         
     | 
| 
      
 609 
     | 
    
         
            +
                          end
         
     | 
| 
      
 610 
     | 
    
         
            +
                        end
         
     | 
| 
      
 611 
     | 
    
         
            +
                        project.task :build => task
         
     | 
| 
       609 
612 
     | 
    
         
             
                      end
         
     | 
| 
       610 
613 
     | 
    
         
             
                    end
         
     | 
| 
       611 
     | 
    
         
            -
                    project.task :build => task
         
     | 
| 
       612 
     | 
    
         
            -
                  end
         
     | 
| 
       613 
     | 
    
         
            -
                end
         
     | 
| 
       614 
614 
     | 
    
         | 
| 
       615 
     | 
    
         
            -
             
     | 
| 
       616 
     | 
    
         
            -
             
     | 
| 
       617 
     | 
    
         
            -
             
     | 
| 
       618 
     | 
    
         
            -
             
     | 
| 
       619 
     | 
    
         
            -
             
     | 
| 
       620 
     | 
    
         
            -
             
     | 
| 
       621 
     | 
    
         
            -
             
     | 
| 
       622 
     | 
    
         
            -
             
     | 
| 
       623 
     | 
    
         
            -
             
     | 
| 
       624 
     | 
    
         
            -
             
     | 
| 
       625 
     | 
    
         
            -
             
     | 
| 
      
 615 
     | 
    
         
            +
                    def add_prod_libs_to_distributeables(project)
         
     | 
| 
      
 616 
     | 
    
         
            +
                      pkgs = project.packages.find_all { |pkg| ['war'].member? pkg.type.to_s }
         
     | 
| 
      
 617 
     | 
    
         
            +
                      pkgs.each do |pkg|
         
     | 
| 
      
 618 
     | 
    
         
            +
                        task = project.task "#{pkg.name}deps" => project.ivy.file_project.task('ivy:resolve') do
         
     | 
| 
      
 619 
     | 
    
         
            +
                          includes = project.ivy.package_include
         
     | 
| 
      
 620 
     | 
    
         
            +
                          excludes = project.ivy.package_exclude
         
     | 
| 
      
 621 
     | 
    
         
            +
                          types = project.ivy.package_type
         
     | 
| 
      
 622 
     | 
    
         
            +
                          confs = project.ivy.package_conf
         
     | 
| 
      
 623 
     | 
    
         
            +
                          if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
         
     | 
| 
      
 624 
     | 
    
         
            +
                            pkg.with :libs => [deps, pkg.libs].flatten
         
     | 
| 
      
 625 
     | 
    
         
            +
                            info "Adding production libs from conf '#{confs.join(', ')}' to WAR '#{pkg.name}' in project '#{project.name}'"
         
     | 
| 
      
 626 
     | 
    
         
            +
                          end
         
     | 
| 
      
 627 
     | 
    
         
            +
                        end
         
     | 
| 
      
 628 
     | 
    
         
            +
                        project.task :build => task
         
     | 
| 
       626 
629 
     | 
    
         
             
                      end
         
     | 
| 
       627 
     | 
    
         
            -
                    end
         
     | 
| 
       628 
     | 
    
         
            -
                    project.task :build => task
         
     | 
| 
       629 
     | 
    
         
            -
                  end
         
     | 
| 
       630 
630 
     | 
    
         | 
| 
       631 
     | 
    
         
            -
             
     | 
| 
       632 
     | 
    
         
            -
             
     | 
| 
       633 
     | 
    
         
            -
             
     | 
| 
       634 
     | 
    
         
            -
             
     | 
| 
       635 
     | 
    
         
            -
             
     | 
| 
       636 
     | 
    
         
            -
             
     | 
| 
       637 
     | 
    
         
            -
             
     | 
| 
       638 
     | 
    
         
            -
             
     | 
| 
       639 
     | 
    
         
            -
             
     | 
| 
       640 
     | 
    
         
            -
             
     | 
| 
      
 631 
     | 
    
         
            +
                      pkgs = project.packages.find_all { |pkg| ['ear'].member? pkg.type.to_s }
         
     | 
| 
      
 632 
     | 
    
         
            +
                      pkgs.each do |pkg|
         
     | 
| 
      
 633 
     | 
    
         
            +
                        task = project.task "#{pkg.name}deps" => project.ivy.file_project.task('ivy:resolve') do
         
     | 
| 
      
 634 
     | 
    
         
            +
                          includes = project.ivy.package_include
         
     | 
| 
      
 635 
     | 
    
         
            +
                          excludes = project.ivy.package_exclude
         
     | 
| 
      
 636 
     | 
    
         
            +
                          types = project.ivy.package_type
         
     | 
| 
      
 637 
     | 
    
         
            +
                          confs = project.ivy.package_conf
         
     | 
| 
      
 638 
     | 
    
         
            +
                          if deps = project.ivy.filter(confs, :type => types, :include => includes, :exclude => excludes)
         
     | 
| 
      
 639 
     | 
    
         
            +
                            pkg.add deps, :type => :lib, :path => ''
         
     | 
| 
      
 640 
     | 
    
         
            +
                            info "Adding production libs from conf '#{confs.join(', ')}' to EAR '#{pkg.name}' in project '#{project.name}'"
         
     | 
| 
      
 641 
     | 
    
         
            +
                          end
         
     | 
| 
      
 642 
     | 
    
         
            +
                        end
         
     | 
| 
      
 643 
     | 
    
         
            +
                        project.task :build => task
         
     | 
| 
       641 
644 
     | 
    
         
             
                      end
         
     | 
| 
       642 
645 
     | 
    
         
             
                    end
         
     | 
| 
       643 
     | 
    
         
            -
                    project.task :build => task
         
     | 
| 
       644 
     | 
    
         
            -
                  end
         
     | 
| 
       645 
     | 
    
         
            -
                end
         
     | 
| 
       646 
646 
     | 
    
         | 
| 
       647 
     | 
    
         
            -
             
     | 
| 
       648 
     | 
    
         
            -
             
     | 
| 
       649 
     | 
    
         
            -
             
     | 
| 
       650 
     | 
    
         
            -
             
     | 
| 
       651 
     | 
    
         
            -
                  end
         
     | 
| 
       652 
     | 
    
         
            -
                  project.packages.each do |pkg|
         
     | 
| 
       653 
     | 
    
         
            -
                    target_file = project.ivy.publish[pkg] || File.basename(pkg.name).gsub(/-#{project.version}/, '')
         
     | 
| 
       654 
     | 
    
         
            -
                    taskname = ivy_project.path_to(ivy_project.ivy.publish_from, target_file)
         
     | 
| 
       655 
     | 
    
         
            -
                    if taskname != pkg.name
         
     | 
| 
       656 
     | 
    
         
            -
                      project.file taskname => pkg.name do
         
     | 
| 
       657 
     | 
    
         
            -
                        verbose "Ivy copying '#{pkg.name}' to '#{taskname}' for publishing"
         
     | 
| 
       658 
     | 
    
         
            -
                        FileUtils.mkdir_p File.dirname(taskname) unless File.directory?(File.dirname(taskname))
         
     | 
| 
       659 
     | 
    
         
            -
                        FileUtils.cp pkg.name, taskname
         
     | 
| 
      
 647 
     | 
    
         
            +
                    def add_copy_tasks_for_publish(project)
         
     | 
| 
      
 648 
     | 
    
         
            +
                      ivy_project = project
         
     | 
| 
      
 649 
     | 
    
         
            +
                      until ivy_project.ivy.own_file?
         
     | 
| 
      
 650 
     | 
    
         
            +
                        ivy_project = ivy_project.parent
         
     | 
| 
       660 
651 
     | 
    
         
             
                      end
         
     | 
| 
       661 
     | 
    
         
            -
             
     | 
| 
      
 652 
     | 
    
         
            +
                      project.packages.each do |pkg|
         
     | 
| 
      
 653 
     | 
    
         
            +
                        target_file = project.ivy.publish[pkg] || File.basename(pkg.name).gsub(/-#{project.version}/, '')
         
     | 
| 
      
 654 
     | 
    
         
            +
                        taskname = ivy_project.path_to(ivy_project.ivy.publish_from, target_file)
         
     | 
| 
      
 655 
     | 
    
         
            +
                        if taskname != pkg.name
         
     | 
| 
      
 656 
     | 
    
         
            +
                          project.file taskname => pkg.name do
         
     | 
| 
      
 657 
     | 
    
         
            +
                            verbose "Ivy copying '#{pkg.name}' to '#{taskname}' for publishing"
         
     | 
| 
      
 658 
     | 
    
         
            +
                            FileUtils.mkdir_p File.dirname(taskname) unless File.directory?(File.dirname(taskname))
         
     | 
| 
      
 659 
     | 
    
         
            +
                            FileUtils.cp pkg.name, taskname
         
     | 
| 
      
 660 
     | 
    
         
            +
                          end
         
     | 
| 
      
 661 
     | 
    
         
            +
                        end
         
     | 
| 
       662 
662 
     | 
    
         | 
| 
       663 
     | 
    
         
            -
             
     | 
| 
      
 663 
     | 
    
         
            +
                        ivy_project.task 'ivy:publish' => taskname
         
     | 
| 
      
 664 
     | 
    
         
            +
                      end
         
     | 
| 
      
 665 
     | 
    
         
            +
                    end
         
     | 
| 
       664 
666 
     | 
    
         
             
                  end
         
     | 
| 
       665 
     | 
    
         
            -
                end
         
     | 
| 
       666 
     | 
    
         
            -
              end
         
     | 
| 
       667 
667 
     | 
    
         | 
| 
       668 
     | 
    
         
            -
             
     | 
| 
       669 
     | 
    
         
            -
             
     | 
| 
       670 
     | 
    
         
            -
             
     | 
| 
       671 
     | 
    
         
            -
             
     | 
| 
       672 
     | 
    
         
            -
             
     | 
| 
      
 668 
     | 
    
         
            +
                  # Returns the +ivy+ configuration for the project. Use this to configure Ivy.
         
     | 
| 
      
 669 
     | 
    
         
            +
                  # see IvyConfig for more details about configuration options.
         
     | 
| 
      
 670 
     | 
    
         
            +
                  def ivy
         
     | 
| 
      
 671 
     | 
    
         
            +
                    @ivy_config ||= IvyConfig.new(self)
         
     | 
| 
      
 672 
     | 
    
         
            +
                  end
         
     | 
| 
       673 
673 
     | 
    
         | 
| 
       674 
     | 
    
         
            -
             
     | 
| 
       675 
     | 
    
         
            -
             
     | 
| 
       676 
     | 
    
         
            -
             
     | 
| 
       677 
     | 
    
         
            -
             
     | 
| 
      
 674 
     | 
    
         
            +
                  first_time do
         
     | 
| 
      
 675 
     | 
    
         
            +
                    namespace 'ivy' do
         
     | 
| 
      
 676 
     | 
    
         
            +
                      desc 'Resolves the ivy dependencies'
         
     | 
| 
      
 677 
     | 
    
         
            +
                      task :resolve
         
     | 
| 
       678 
678 
     | 
    
         | 
| 
       679 
     | 
    
         
            -
             
     | 
| 
       680 
     | 
    
         
            -
             
     | 
| 
      
 679 
     | 
    
         
            +
                      desc 'Publish the artifacts to ivy repository as defined by environment'
         
     | 
| 
      
 680 
     | 
    
         
            +
                      task :publish
         
     | 
| 
       681 
681 
     | 
    
         | 
| 
       682 
     | 
    
         
            -
             
     | 
| 
       683 
     | 
    
         
            -
             
     | 
| 
      
 682 
     | 
    
         
            +
                      desc 'Creates a dependency report for the project'
         
     | 
| 
      
 683 
     | 
    
         
            +
                      task :report
         
     | 
| 
       684 
684 
     | 
    
         | 
| 
       685 
     | 
    
         
            -
             
     | 
| 
       686 
     | 
    
         
            -
             
     | 
| 
      
 685 
     | 
    
         
            +
                      desc 'Clean the local Ivy cache and the local ivy repository'
         
     | 
| 
      
 686 
     | 
    
         
            +
                      task :clean
         
     | 
| 
       687 
687 
     | 
    
         | 
| 
       688 
     | 
    
         
            -
             
     | 
| 
       689 
     | 
    
         
            -
             
     | 
| 
       690 
     | 
    
         
            -
                  
         
     | 
| 
       691 
     | 
    
         
            -
                  desc 'Clean the local Ivy result cache to force execution of ivy targets'
         
     | 
| 
       692 
     | 
    
         
            -
                  task :clean_result_cache
         
     | 
| 
      
 688 
     | 
    
         
            +
                      desc 'Creates default Maven POM for project from ivy.xml'
         
     | 
| 
      
 689 
     | 
    
         
            +
                      task :makepom
         
     | 
| 
       693 
690 
     | 
    
         | 
| 
       694 
     | 
    
         
            -
             
     | 
| 
       695 
     | 
    
         
            -
             
     | 
| 
      
 691 
     | 
    
         
            +
                      desc 'Clean the local Ivy result cache to force execution of ivy targets'
         
     | 
| 
      
 692 
     | 
    
         
            +
                      task :clean_result_cache
         
     | 
| 
       696 
693 
     | 
    
         | 
| 
       697 
     | 
    
         
            -
             
     | 
| 
       698 
     | 
    
         
            -
             
     | 
| 
       699 
     | 
    
         
            -
                end
         
     | 
| 
       700 
     | 
    
         
            -
              end
         
     | 
| 
       701 
     | 
    
         
            -
              
         
     | 
| 
       702 
     | 
    
         
            -
              after_define do |project|
         
     | 
| 
       703 
     | 
    
         
            -
                if project.ivy.enabled?
         
     | 
| 
       704 
     | 
    
         
            -
                  IvyExtension.add_ivy_deps_to_java_tasks(project)
         
     | 
| 
       705 
     | 
    
         
            -
                  IvyExtension.add_manifest_to_distributeables(project)
         
     | 
| 
       706 
     | 
    
         
            -
                  IvyExtension.add_prod_libs_to_distributeables(project)
         
     | 
| 
       707 
     | 
    
         
            -
                  IvyExtension.add_copy_tasks_for_publish(project)
         
     | 
| 
      
 694 
     | 
    
         
            +
                      desc 'Enable the local Ivy result cache by creating the marker file'
         
     | 
| 
      
 695 
     | 
    
         
            +
                      task :enable_result_cache
         
     | 
| 
       708 
696 
     | 
    
         | 
| 
       709 
     | 
    
         
            -
             
     | 
| 
       710 
     | 
    
         
            -
             
     | 
| 
       711 
     | 
    
         
            -
                      project.ivy.configure
         
     | 
| 
      
 697 
     | 
    
         
            +
                      desc 'Disable the local Ivy result cache by removing the marker file'
         
     | 
| 
      
 698 
     | 
    
         
            +
                      task :disable_result_cache
         
     | 
| 
       712 
699 
     | 
    
         
             
                    end
         
     | 
| 
      
 700 
     | 
    
         
            +
                  end
         
     | 
| 
      
 701 
     | 
    
         
            +
              
         
     | 
| 
      
 702 
     | 
    
         
            +
                  after_define do |project|
         
     | 
| 
      
 703 
     | 
    
         
            +
                    if project.ivy.enabled?
         
     | 
| 
      
 704 
     | 
    
         
            +
                      IvyExtension.add_ivy_deps_to_java_tasks(project)
         
     | 
| 
      
 705 
     | 
    
         
            +
                      IvyExtension.add_manifest_to_distributeables(project)
         
     | 
| 
      
 706 
     | 
    
         
            +
                      IvyExtension.add_prod_libs_to_distributeables(project)
         
     | 
| 
      
 707 
     | 
    
         
            +
                      IvyExtension.add_copy_tasks_for_publish(project)
         
     | 
| 
      
 708 
     | 
    
         
            +
                  
         
     | 
| 
      
 709 
     | 
    
         
            +
                      namespace 'ivy' do
         
     | 
| 
      
 710 
     | 
    
         
            +
                        task :configure do
         
     | 
| 
      
 711 
     | 
    
         
            +
                          project.ivy.configure
         
     | 
| 
      
 712 
     | 
    
         
            +
                        end
         
     | 
| 
       713 
713 
     | 
    
         | 
| 
       714 
     | 
    
         
            -
             
     | 
| 
       715 
     | 
    
         
            -
             
     | 
| 
       716 
     | 
    
         
            -
             
     | 
| 
       717 
     | 
    
         
            -
             
     | 
| 
       718 
     | 
    
         
            -
             
     | 
| 
      
 714 
     | 
    
         
            +
                        task :clean => :configure do
         
     | 
| 
      
 715 
     | 
    
         
            +
                          # TODO This is redundant, refactor ivy_ant_wrap and this to use a single config object
         
     | 
| 
      
 716 
     | 
    
         
            +
                          rm_rf project.path_to(:reports, 'ivy')
         
     | 
| 
      
 717 
     | 
    
         
            +
                          project.ivy.cleancache
         
     | 
| 
      
 718 
     | 
    
         
            +
                        end
         
     | 
| 
       719 
719 
     | 
    
         | 
| 
       720 
     | 
    
         
            -
             
     | 
| 
       721 
     | 
    
         
            -
             
     | 
| 
       722 
     | 
    
         
            -
             
     | 
| 
       723 
     | 
    
         
            -
             
     | 
| 
      
 720 
     | 
    
         
            +
                        task :clean_result_cache do
         
     | 
| 
      
 721 
     | 
    
         
            +
                          project.send(:info, "Deleting IVY result cache dir '#{project.ivy.result_cache_dir}'")
         
     | 
| 
      
 722 
     | 
    
         
            +
                          rm_rf project.ivy.result_cache_dir
         
     | 
| 
      
 723 
     | 
    
         
            +
                        end
         
     | 
| 
       724 
724 
     | 
    
         | 
| 
       725 
     | 
    
         
            -
             
     | 
| 
       726 
     | 
    
         
            -
             
     | 
| 
       727 
     | 
    
         
            -
             
     | 
| 
       728 
     | 
    
         
            -
             
     | 
| 
      
 725 
     | 
    
         
            +
                        task :enable_result_cache do
         
     | 
| 
      
 726 
     | 
    
         
            +
                          project.send(:info, "Creating IVY caching marker file '#{project.ivy.caching_marker}'")
         
     | 
| 
      
 727 
     | 
    
         
            +
                          touch project.ivy.caching_marker
         
     | 
| 
      
 728 
     | 
    
         
            +
                        end
         
     | 
| 
       729 
729 
     | 
    
         | 
| 
       730 
     | 
    
         
            -
             
     | 
| 
       731 
     | 
    
         
            -
             
     | 
| 
       732 
     | 
    
         
            -
             
     | 
| 
       733 
     | 
    
         
            -
             
     | 
| 
      
 730 
     | 
    
         
            +
                        task :disable_result_cache do
         
     | 
| 
      
 731 
     | 
    
         
            +
                          project.send(:info, "Deleting IVY caching marker file '#{project.ivy.caching_marker}'")
         
     | 
| 
      
 732 
     | 
    
         
            +
                          rm_f project.ivy.caching_marker
         
     | 
| 
      
 733 
     | 
    
         
            +
                        end
         
     | 
| 
       734 
734 
     | 
    
         | 
| 
       735 
     | 
    
         
            -
             
     | 
| 
       736 
     | 
    
         
            -
             
     | 
| 
       737 
     | 
    
         
            -
             
     | 
| 
      
 735 
     | 
    
         
            +
                        task :resolve => "#{project.name}:ivy:configure" do
         
     | 
| 
      
 736 
     | 
    
         
            +
                          project.ivy.__resolve__
         
     | 
| 
      
 737 
     | 
    
         
            +
                        end
         
     | 
| 
       738 
738 
     | 
    
         | 
| 
       739 
     | 
    
         
            -
             
     | 
| 
       740 
     | 
    
         
            -
             
     | 
| 
       741 
     | 
    
         
            -
             
     | 
| 
      
 739 
     | 
    
         
            +
                        task :report => "#{project.name}:ivy:resolve" do
         
     | 
| 
      
 740 
     | 
    
         
            +
                          project.ivy.report
         
     | 
| 
      
 741 
     | 
    
         
            +
                        end
         
     | 
| 
       742 
742 
     | 
    
         | 
| 
       743 
     | 
    
         
            -
             
     | 
| 
       744 
     | 
    
         
            -
             
     | 
| 
       745 
     | 
    
         
            -
             
     | 
| 
      
 743 
     | 
    
         
            +
                        task :publish => "#{project.name}:ivy:resolve" do
         
     | 
| 
      
 744 
     | 
    
         
            +
                          project.ivy.__publish__
         
     | 
| 
      
 745 
     | 
    
         
            +
                        end
         
     | 
| 
       746 
746 
     | 
    
         | 
| 
       747 
     | 
    
         
            -
             
     | 
| 
       748 
     | 
    
         
            -
             
     | 
| 
      
 747 
     | 
    
         
            +
                        task :makepom => "#{project.name}:ivy:resolve" do
         
     | 
| 
      
 748 
     | 
    
         
            +
                          project.ivy.makepom
         
     | 
| 
      
 749 
     | 
    
         
            +
                        end
         
     | 
| 
      
 750 
     | 
    
         
            +
                      end
         
     | 
| 
       749 
751 
     | 
    
         
             
                    end
         
     | 
| 
       750 
752 
     | 
    
         
             
                  end
         
     | 
| 
       751 
753 
     | 
    
         
             
                end
         
     | 
| 
       752 
     | 
    
         
            -
              end
         
     | 
| 
       753 
     | 
    
         
            -
            end
         
     | 
| 
       754 
754 
     | 
    
         | 
| 
       755 
     | 
    
         
            -
            # Global targets that are not bound to a project
         
     | 
| 
       756 
     | 
    
         
            -
            namespace 'ivy' do
         
     | 
| 
       757 
     | 
    
         
            -
             
     | 
| 
       758 
     | 
    
         
            -
             
     | 
| 
       759 
     | 
    
         
            -
             
     | 
| 
       760 
     | 
    
         
            -
             
     | 
| 
       761 
     | 
    
         
            -
             
     | 
| 
      
 755 
     | 
    
         
            +
                # Global targets that are not bound to a project
         
     | 
| 
      
 756 
     | 
    
         
            +
                namespace 'ivy' do
         
     | 
| 
      
 757 
     | 
    
         
            +
                  task :clean do
         
     | 
| 
      
 758 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 759 
     | 
    
         
            +
                      project.task('ivy:clean').invoke
         
     | 
| 
      
 760 
     | 
    
         
            +
                    end
         
     | 
| 
      
 761 
     | 
    
         
            +
                  end
         
     | 
| 
       762 
762 
     | 
    
         | 
| 
       763 
     | 
    
         
            -
             
     | 
| 
       764 
     | 
    
         
            -
             
     | 
| 
       765 
     | 
    
         
            -
             
     | 
| 
       766 
     | 
    
         
            -
             
     | 
| 
       767 
     | 
    
         
            -
             
     | 
| 
      
 763 
     | 
    
         
            +
                  task :clean_result_cache do
         
     | 
| 
      
 764 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 765 
     | 
    
         
            +
                      project.task('ivy:clean_result_cache').invoke
         
     | 
| 
      
 766 
     | 
    
         
            +
                    end
         
     | 
| 
      
 767 
     | 
    
         
            +
                  end
         
     | 
| 
       768 
768 
     | 
    
         | 
| 
       769 
     | 
    
         
            -
             
     | 
| 
       770 
     | 
    
         
            -
             
     | 
| 
       771 
     | 
    
         
            -
             
     | 
| 
       772 
     | 
    
         
            -
             
     | 
| 
       773 
     | 
    
         
            -
             
     | 
| 
      
 769 
     | 
    
         
            +
                  task :enable_result_cache do
         
     | 
| 
      
 770 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 771 
     | 
    
         
            +
                      project.task('ivy:enable_result_cache').invoke
         
     | 
| 
      
 772 
     | 
    
         
            +
                    end
         
     | 
| 
      
 773 
     | 
    
         
            +
                  end
         
     | 
| 
       774 
774 
     | 
    
         | 
| 
       775 
     | 
    
         
            -
             
     | 
| 
       776 
     | 
    
         
            -
             
     | 
| 
       777 
     | 
    
         
            -
             
     | 
| 
       778 
     | 
    
         
            -
             
     | 
| 
       779 
     | 
    
         
            -
             
     | 
| 
      
 775 
     | 
    
         
            +
                  task :disable_result_cache do
         
     | 
| 
      
 776 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 777 
     | 
    
         
            +
                      project.task('ivy:disable_result_cache').invoke
         
     | 
| 
      
 778 
     | 
    
         
            +
                    end
         
     | 
| 
      
 779 
     | 
    
         
            +
                  end
         
     | 
| 
       780 
780 
     | 
    
         | 
| 
       781 
     | 
    
         
            -
             
     | 
| 
       782 
     | 
    
         
            -
             
     | 
| 
       783 
     | 
    
         
            -
             
     | 
| 
       784 
     | 
    
         
            -
             
     | 
| 
       785 
     | 
    
         
            -
             
     | 
| 
       786 
     | 
    
         
            -
             
     | 
| 
      
 781 
     | 
    
         
            +
                  task :resolve do
         
     | 
| 
      
 782 
     | 
    
         
            +
                    info "Resolving all distinct ivy files"
         
     | 
| 
      
 783 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 784 
     | 
    
         
            +
                      project.task('ivy:resolve').invoke
         
     | 
| 
      
 785 
     | 
    
         
            +
                    end
         
     | 
| 
      
 786 
     | 
    
         
            +
                  end
         
     | 
| 
       787 
787 
     | 
    
         | 
| 
       788 
     | 
    
         
            -
             
     | 
| 
       789 
     | 
    
         
            -
             
     | 
| 
       790 
     | 
    
         
            -
             
     | 
| 
       791 
     | 
    
         
            -
             
     | 
| 
      
 788 
     | 
    
         
            +
                  task :publish => :package do
         
     | 
| 
      
 789 
     | 
    
         
            +
                    info "Publishing all distinct ivy files"
         
     | 
| 
      
 790 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 791 
     | 
    
         
            +
                      project.task('ivy:publish').invoke
         
     | 
| 
      
 792 
     | 
    
         
            +
                    end
         
     | 
| 
      
 793 
     | 
    
         
            +
                  end
         
     | 
| 
      
 794 
     | 
    
         
            +
             
     | 
| 
      
 795 
     | 
    
         
            +
                  task :makepom => :resolve do
         
     | 
| 
      
 796 
     | 
    
         
            +
                    info "Create Maven POMs for all projects with distinct ivy files"
         
     | 
| 
      
 797 
     | 
    
         
            +
                    Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
      
 798 
     | 
    
         
            +
                      project.task('ivy:makepom').invoke
         
     | 
| 
      
 799 
     | 
    
         
            +
                    end
         
     | 
| 
      
 800 
     | 
    
         
            +
                  end
         
     | 
| 
       792 
801 
     | 
    
         
             
                end
         
     | 
| 
       793 
     | 
    
         
            -
              end
         
     | 
| 
       794 
802 
     | 
    
         | 
| 
       795 
     | 
    
         
            -
             
     | 
| 
       796 
     | 
    
         
            -
             
     | 
| 
       797 
     | 
    
         
            -
                Buildr.projects.find_all{ |p| p.ivy.own_file? }.each do |project|
         
     | 
| 
       798 
     | 
    
         
            -
                  project.task('ivy:makepom').invoke
         
     | 
| 
      
 803 
     | 
    
         
            +
                class Buildr::Project # :nodoc:
         
     | 
| 
      
 804 
     | 
    
         
            +
                  include IvyExtension
         
     | 
| 
       799 
805 
     | 
    
         
             
                end
         
     | 
| 
       800 
806 
     | 
    
         
             
              end
         
     | 
| 
       801 
807 
     | 
    
         
             
            end
         
     | 
| 
       802 
     | 
    
         
            -
             
     | 
| 
       803 
     | 
    
         
            -
            class Buildr::Project # :nodoc:
         
     | 
| 
       804 
     | 
    
         
            -
              include IvyExtension
         
     | 
| 
       805 
     | 
    
         
            -
            end
         
     | 
| 
       806 
     | 
    
         
            -
            end
         
     | 
| 
       807 
     | 
    
         
            -
            end
         
     | 
    
        data/lib/ivy/install.rb
    ADDED
    
    | 
         @@ -0,0 +1,33 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'ivy/target'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Ivy
         
     | 
| 
      
 4 
     | 
    
         
            +
              class Install < Ivy::Target
         
     | 
| 
      
 5 
     | 
    
         
            +
                def parameter
         
     | 
| 
      
 6 
     | 
    
         
            +
                  [
         
     | 
| 
      
 7 
     | 
    
         
            +
                    Parameter.new(:from, true),
         
     | 
| 
      
 8 
     | 
    
         
            +
                    Parameter.new(:to, true),
         
     | 
| 
      
 9 
     | 
    
         
            +
                    Parameter.new(:organisation, true),
         
     | 
| 
      
 10 
     | 
    
         
            +
                    Parameter.new(:module, true),
         
     | 
| 
      
 11 
     | 
    
         
            +
                    Parameter.new(:branch, false),
         
     | 
| 
      
 12 
     | 
    
         
            +
                    Parameter.new(:revision, true),
         
     | 
| 
      
 13 
     | 
    
         
            +
                    Parameter.new(:type, false),
         
     | 
| 
      
 14 
     | 
    
         
            +
                    Parameter.new(:validate, false),
         
     | 
| 
      
 15 
     | 
    
         
            +
                    Parameter.new(:overwrite, false),
         
     | 
| 
      
 16 
     | 
    
         
            +
                    Parameter.new(:transitive, false),
         
     | 
| 
      
 17 
     | 
    
         
            +
                    Parameter.new(:matcher, false),
         
     | 
| 
      
 18 
     | 
    
         
            +
                    Parameter.new(:settingsRef, false),
         
     | 
| 
      
 19 
     | 
    
         
            +
                    Parameter.new(:haltonfailure, false)
         
     | 
| 
      
 20 
     | 
    
         
            +
                  ]
         
     | 
| 
      
 21 
     | 
    
         
            +
                end
         
     | 
| 
      
 22 
     | 
    
         
            +
                
         
     | 
| 
      
 23 
     | 
    
         
            +
                protected
         
     | 
| 
      
 24 
     | 
    
         
            +
                def execute_ivy
         
     | 
| 
      
 25 
     | 
    
         
            +
                  call_nested :ivy_install => params
         
     | 
| 
      
 26 
     | 
    
         
            +
                end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                def create_return_values
         
     | 
| 
      
 29 
     | 
    
         
            +
                  nil
         
     | 
| 
      
 30 
     | 
    
         
            +
                end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
              end
         
     | 
| 
      
 33 
     | 
    
         
            +
            end
         
     | 
    
        data/lib/ivy/targets.rb
    CHANGED
    
    | 
         @@ -1,49 +1,50 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require 'ivy/target'
         
     | 
| 
       2 
     | 
    
         
            -
            require 'ivy/info'
         
     | 
| 
       3 
     | 
    
         
            -
            require 'ivy/settings'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'ivy/configure'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'ivy/cleancache'
         
     | 
| 
       6 
     | 
    
         
            -
            require 'ivy/resolve'
         
     | 
| 
       7 
     | 
    
         
            -
            require 'ivy/makepom'
         
     | 
| 
       8 
     | 
    
         
            -
            require 'ivy/cachepath'
         
     | 
| 
       9 
     | 
    
         
            -
            #require 'ivy/listmodules'
         
     | 
| 
       10 
     | 
    
         
            -
            require 'ivy/artifactproperty'
         
     | 
| 
       11 
     | 
    
         
            -
            require 'ivy/artifactreport'
         
     | 
| 
       12 
     | 
    
         
            -
            require 'ivy/findrevision'
         
     | 
| 
       13 
     | 
    
         
            -
            require 'ivy/ 
     | 
| 
       14 
     | 
    
         
            -
            require 'ivy/ 
     | 
| 
       15 
     | 
    
         
            -
            require 'ivy/ 
     | 
| 
       16 
     | 
    
         
            -
            require 'ivy/ 
     | 
| 
       17 
     | 
    
         
            -
            require 'ivy/ 
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
                *  
     | 
| 
       23 
     | 
    
         
            -
                *  
     | 
| 
       24 
     | 
    
         
            -
                *  
     | 
| 
       25 
     | 
    
         
            -
                *  
     | 
| 
       26 
     | 
    
         
            -
                *  
     | 
| 
       27 
     | 
    
         
            -
                *  
     | 
| 
       28 
     | 
    
         
            -
                *  
     | 
| 
       29 
     | 
    
         
            -
                *  
     | 
| 
       30 
     | 
    
         
            -
                *  
     | 
| 
       31 
     | 
    
         
            -
                *  
     | 
| 
       32 
     | 
    
         
            -
                *  
     | 
| 
       33 
     | 
    
         
            -
                *  
     | 
| 
       34 
     | 
    
         
            -
                *  
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
                *  
     | 
| 
       41 
     | 
    
         
            -
                *  
     | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
       43 
     | 
    
         
            -
             
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
             
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
                *  
     | 
| 
      
 1 
     | 
    
         
            +
            require 'ivy/target'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'ivy/info'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'ivy/settings'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'ivy/configure'
         
     | 
| 
      
 5 
     | 
    
         
            +
            require 'ivy/cleancache'
         
     | 
| 
      
 6 
     | 
    
         
            +
            require 'ivy/resolve'
         
     | 
| 
      
 7 
     | 
    
         
            +
            require 'ivy/makepom'
         
     | 
| 
      
 8 
     | 
    
         
            +
            require 'ivy/cachepath'
         
     | 
| 
      
 9 
     | 
    
         
            +
            #require 'ivy/listmodules'
         
     | 
| 
      
 10 
     | 
    
         
            +
            require 'ivy/artifactproperty'
         
     | 
| 
      
 11 
     | 
    
         
            +
            require 'ivy/artifactreport'
         
     | 
| 
      
 12 
     | 
    
         
            +
            require 'ivy/findrevision'
         
     | 
| 
      
 13 
     | 
    
         
            +
            require 'ivy/install'
         
     | 
| 
      
 14 
     | 
    
         
            +
            require 'ivy/buildnumber'
         
     | 
| 
      
 15 
     | 
    
         
            +
            require 'ivy/retrieve'
         
     | 
| 
      
 16 
     | 
    
         
            +
            require 'ivy/publish'
         
     | 
| 
      
 17 
     | 
    
         
            +
            require 'ivy/report'
         
     | 
| 
      
 18 
     | 
    
         
            +
            require 'ivy/buildlist'
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            =begin
         
     | 
| 
      
 21 
     | 
    
         
            +
            finished
         
     | 
| 
      
 22 
     | 
    
         
            +
                * info
         
     | 
| 
      
 23 
     | 
    
         
            +
                * settings
         
     | 
| 
      
 24 
     | 
    
         
            +
                * configure
         
     | 
| 
      
 25 
     | 
    
         
            +
                * cleancache
         
     | 
| 
      
 26 
     | 
    
         
            +
                * buildnumber
         
     | 
| 
      
 27 
     | 
    
         
            +
                * findrevision
         
     | 
| 
      
 28 
     | 
    
         
            +
                * cachepath
         
     | 
| 
      
 29 
     | 
    
         
            +
                * artifactreport
         
     | 
| 
      
 30 
     | 
    
         
            +
                * resolve
         
     | 
| 
      
 31 
     | 
    
         
            +
                * makepom
         
     | 
| 
      
 32 
     | 
    
         
            +
                * retrieve
         
     | 
| 
      
 33 
     | 
    
         
            +
                * publish
         
     | 
| 
      
 34 
     | 
    
         
            +
                * artifactproperty
         
     | 
| 
      
 35 
     | 
    
         
            +
                * report
         
     | 
| 
      
 36 
     | 
    
         
            +
                      o Using yEd to layout report graphs
         
     | 
| 
      
 37 
     | 
    
         
            +
                * buildlist
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
            TODO
         
     | 
| 
      
 40 
     | 
    
         
            +
                * deliver
         
     | 
| 
      
 41 
     | 
    
         
            +
                * install
         
     | 
| 
      
 42 
     | 
    
         
            +
                * repreport
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
            not working:
         
     | 
| 
      
 45 
     | 
    
         
            +
                * listmodules
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
            makes no sense:
         
     | 
| 
      
 48 
     | 
    
         
            +
                * cachefileset
         
     | 
| 
      
 49 
     | 
    
         
            +
                * var
         
     | 
| 
       49 
50 
     | 
    
         
             
            =end
         
     | 
    
        data/lib/ivy4r.rb
    CHANGED
    
    | 
         @@ -148,6 +148,11 @@ class Ivy4r 
     | 
|
| 
       148 
148 
     | 
    
         
             
              def findrevision(*params)
         
     | 
| 
       149 
149 
     | 
    
         
             
                Ivy::Findrevision.new(ant, cache_dir).execute(*params)
         
     | 
| 
       150 
150 
     | 
    
         
             
              end
         
     | 
| 
      
 151 
     | 
    
         
            +
             
     | 
| 
      
 152 
     | 
    
         
            +
              # Calls the __install__ ivy target with given parameters always returns nil
         
     | 
| 
      
 153 
     | 
    
         
            +
              def install(*params)
         
     | 
| 
      
 154 
     | 
    
         
            +
                Ivy::Install.new(ant, cache_dir).execute(*params)
         
     | 
| 
      
 155 
     | 
    
         
            +
              end
         
     | 
| 
       151 
156 
     | 
    
         | 
| 
       152 
157 
     | 
    
         
             
              # Calls the __artifactproperty__ ivy target with given parameters and returns
         
     | 
| 
       153 
158 
     | 
    
         
             
              # map with all defined properties
         
     | 
    
        data/lib/ivy4r/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version 
     | 
|
| 
       5 
5 
     | 
    
         
             
              segments: 
         
     | 
| 
       6 
6 
     | 
    
         
             
                - 0
         
     | 
| 
       7 
7 
     | 
    
         
             
                - 12
         
     | 
| 
       8 
     | 
    
         
            -
                -  
     | 
| 
       9 
     | 
    
         
            -
              version: 0.12. 
     | 
| 
      
 8 
     | 
    
         
            +
                - 9
         
     | 
| 
      
 9 
     | 
    
         
            +
              version: 0.12.9
         
     | 
| 
       10 
10 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       11 
11 
     | 
    
         
             
            authors: 
         
     | 
| 
       12 
12 
     | 
    
         
             
              - Klaas Reineke
         
     | 
| 
         @@ -14,7 +14,7 @@ autorequire: 
     | 
|
| 
       14 
14 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       15 
15 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
     | 
    
         
            -
            date: 2011-01- 
     | 
| 
      
 17 
     | 
    
         
            +
            date: 2011-01-17 00:00:00 +01:00
         
     | 
| 
       18 
18 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       19 
19 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       20 
20 
     | 
    
         
             
              - !ruby/object:Gem::Dependency 
         
     | 
| 
         @@ -145,6 +145,7 @@ files: 
     | 
|
| 
       145 
145 
     | 
    
         
             
              - lib/ivy/configure.rb
         
     | 
| 
       146 
146 
     | 
    
         
             
              - lib/ivy/findrevision.rb
         
     | 
| 
       147 
147 
     | 
    
         
             
              - lib/ivy/info.rb
         
     | 
| 
      
 148 
     | 
    
         
            +
              - lib/ivy/install.rb
         
     | 
| 
       148 
149 
     | 
    
         
             
              - lib/ivy/java/all_version_matcher.rb
         
     | 
| 
       149 
150 
     | 
    
         
             
              - lib/ivy/java/java_object_wrapper.rb
         
     | 
| 
       150 
151 
     | 
    
         
             
              - lib/ivy/listmodules.rb
         
     |