From 6402edeb47a5b473e9244b9d4c19b18f5c591f85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0est=C3=A1k=20V=C3=ADt?= Date: Tue, 28 Feb 2017 16:57:06 +0100 Subject: [PATCH] When exporting all dependencies, export filenames when no reliable identifier is available --- app/controllers/Statistics.scala | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/app/controllers/Statistics.scala b/app/controllers/Statistics.scala index e8ce7b0..f38ced8 100644 --- a/app/controllers/Statistics.scala +++ b/app/controllers/Statistics.scala @@ -5,7 +5,7 @@ import com.google.inject.Inject import com.google.inject.name.Named import com.ysoft.odc.Confidence.Confidence import com.ysoft.odc.statistics.{LibDepStatistics, TagStatistics} -import com.ysoft.odc.{ArtifactFile, ArtifactItem, Hashes} +import com.ysoft.odc._ import controllers.DependencyCheckReportsParser.ResultWithSelection import controllers.api.{ApiConfig, ApiController} import models.LibraryTag @@ -27,7 +27,18 @@ final case class GroupedDependencyIdentifier(hashes: Hashes, identifiers: Seq[Id object GroupedDependencyIdentifier{ def fromGroupedDependency(groupedDependency: GroupedDependency): GroupedDependencyIdentifier = GroupedDependencyIdentifier( hashes = groupedDependency.hashes, - identifiers = groupedDependency.identifiers.toIndexedSeq.sortBy(_.name) + identifiers = { + val identifiers = groupedDependency.identifiers.toIndexedSeq.sortBy(_.name) + def fileNameIdentifiers = groupedDependency.fileNames.toIndexedSeq.sorted.map(filename => Identifier( + identifierType = "file", + name = filename, + confidence = Confidence.Highest, + url = "" + )) + + if(identifiers.exists(_.confidence >= Confidence.Medium)) identifiers + else fileNameIdentifiers ++ identifiers // If we don't know any reliable identifier, add filenames + } ) }