@Override public ArtifactReport getReport(GAVRequest gavRequest) throws CommunicationException, FindGAVDependencyException { if (gavRequest == null) throw new IllegalArgumentException("GAV can't be null"); Set<Product> products = getProducts(gavRequest.getProductNames(), gavRequest.getProductVersionIds()); GAVDependencyTree dt = dependencyTreeGenerator.getDependencyTree(gavRequest.asGavObject()); return createReport(dt, products).get(); }
GAVToplevelDependencies dependencies; try { dependencies = depGenerator.getToplevelDependencies(gav); hiearchy.setDependencies(toProjectHiearchies(dependencies)); hiearchy.setAnalysisStatus(DependencyAnalysisStatus.ANALYSED); dependencies = depGenerator.getToplevelDependencies(scmInfo.getUrl(), scmInfo.getRevision(), gav);
private <T extends GeneratorEntity> T prepareEntity(EntityConstructor<T> constructor, SCMLocator scm, int id) throws ScmException, PomAnalysisException { GAVToplevelDependencies deps = depGenerator.getToplevelDependenciesFromModules(scm); Optional<POMInfo> pomInfo = pom.getPomInfo(scm.getScmUrl(), scm.getRevision(), scm.getPomPath()); T entity = constructor.construct(scm, id, deps.getGav()); entity.getToplevelProject().setDescription( ProjectHiearchyCreator.getDescription(pomInfo, deps.getGav())); entity.getToplevelProject().setName(ProjectHiearchyCreator.getName(deps.getGav())); ProjectHiearchy ph = entity.getToplevelBc(); ph.setDependencies(nextLevel.processDependencies(ph, deps.getDependencies())); // the top level BC has its dependencies analyzed ph.setAnalysisStatus(DependencyAnalysisStatus.ANALYSED); return entity; }
@Override public Optional<ArtifactReport> getReportFromSCM(SCMReportRequest scml) throws ScmException, PomAnalysisException, CommunicationException { if (scml == null) throw new IllegalArgumentException("SCM information can't be null"); Set<Product> products = getProducts(scml.getProductNames(), scml.getProductVersionIds()); GAVDependencyTree dt = dependencyTreeGenerator.getDependencyTree(scml.getScml()); return createReport(dt, products); }
@Override public Optional<AdvancedArtifactReport> getAdvancedReportFromSCM(SCMReportRequest request) throws ScmException, PomAnalysisException, CommunicationException { SCMLocator scml = request.getScml(); Set<Product> products = getProducts(request.getProductNames(), request.getProductVersionIds()); GAVDependencyTree dt = dependencyTreeGenerator.getDependencyTree(scml); Optional<ArtifactReport> artifactReport = createReport(dt, products); // TODO: hardcoded to git // hopefully we'll get the cached cloned folder for this repo File repoFolder = scmManager.cloneRepository(SCMType.GIT, scml.getScmUrl(), scml.getRevision()); return artifactReport.map(r -> generateAdvancedArtifactReport(r, repoFolder)); }