downloadArtifacts(dependencies, artifactFilter, report, new HashMap(), new HashMap(), cache);
Collection artifacts = new ArrayList(); for (int i = 0; i < dependencies.length; i++) {  if (!dependencies[i].isCompletelyEvicted() && !dependencies[i].hasProblem()) { artifacts.addAll(Arrays.asList(dependencies[i].getSelectedArtifacts(artifactFilter))); } } fireIvyEvent(new PrepareDownloadEvent((Artifact[])artifacts.toArray(new Artifact[artifacts.size()])));  for (int i = 0; i < dependencies.length; i++) {  if (!dependencies[i].isCompletelyEvicted() && !dependencies[i].hasProblem()) { DependencyResolver resolver = dependencies[i].getModuleRevision().getArtifactResolver(); Artifact[] selectedArtifacts = dependencies[i].getSelectedArtifacts(artifactFilter); DownloadReport dReport = resolver.download(selectedArtifacts, this, cache); ArtifactDownloadReport[] adrs = dReport.getArtifactsReports(); for (int j = 0; j < adrs.length; j++) { if (adrs[j].getDownloadStatus() == DownloadStatus.FAILED) { Message.warn("\t[NOT FOUND  ] "+adrs[j].getArtifact()); resolver.reportFailure(adrs[j].getArtifact()); } }  String[] dconfs = dependencies[i].getRootModuleConfigurations(); for (int j = 0; j < dconfs.length; j++) {    if (dependencies[i].isEvicted(dconfs[j])) { report.getConfigurationReport(dconfs[j]).addDependency(dependencies[i]); } else { report.getConfigurationReport(dconfs[j]).addDependency(dependencies[i], dReport); } } } else if (dependencies[i].isCompletelyEvicted()) {  String[] dconfs = dependencies[i].getRootModuleConfigurations(); for (int j = 0; j < dconfs.length; j++) { report.getConfigurationReport(dconfs[j]).addDependency(dependencies[i]); } } }
    private void downloadArtifacts(IvyNode[] dependencies, Filter artifactFilter, ResolveReport report, File cache) {        downloadArtifacts(dependencies, artifactFilter, report, new HashMap(), new HashMap(), cache);    }