Skip to content

Commit 0dd94ad

Browse files
authored
fix: use same summary format as in js (guacsec#156)
## Description Use a `Map<String, SourceSummary>` as return output for the `--summary` flag **Related issue (if any):** fixes guacsec#155 ## Checklist - [x] I have followed this repository's contributing guidelines. - [x] I will adhere to the project's code of conduct. Signed-off-by: Ruben Romero Montes <rromerom@redhat.com>
1 parent 0d343ec commit 0dd94ad

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

  • src/main/java/com/redhat/exhort/cli

src/main/java/com/redhat/exhort/cli/App.java

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,14 @@
2525
import com.redhat.exhort.Api;
2626
import com.redhat.exhort.api.v4.AnalysisReport;
2727
import com.redhat.exhort.api.v4.ProviderReport;
28-
import com.redhat.exhort.api.v4.Source;
28+
import com.redhat.exhort.api.v4.SourceSummary;
2929
import com.redhat.exhort.impl.ExhortApi;
3030
import java.io.IOException;
3131
import java.nio.file.Files;
3232
import java.nio.file.Path;
3333
import java.nio.file.Paths;
34+
import java.util.HashMap;
35+
import java.util.Map;
3436
import java.util.concurrent.CompletableFuture;
3537
import java.util.concurrent.ExecutionException;
3638

@@ -161,7 +163,8 @@ private static CompletableFuture<String> executeComponentAnalysis(
161163
Api api = new ExhortApi();
162164
CompletableFuture<AnalysisReport> analysis = api.componentAnalysis(filePath);
163165
if (outputFormat.equals(OutputFormat.SUMMARY)) {
164-
analysis = analysis.thenApply(App::extractSummary);
166+
var summary = analysis.thenApply(App::extractSummary);
167+
return summary.thenApply(App::toJsonString);
165168
}
166169
return analysis.thenApply(App::toJsonString);
167170
}
@@ -174,9 +177,8 @@ private static String toJsonString(Object obj) {
174177
}
175178
}
176179

177-
private static AnalysisReport extractSummary(AnalysisReport report) {
178-
AnalysisReport summary = new AnalysisReport();
179-
summary.setScanned(report.getScanned());
180+
private static Map<String, SourceSummary> extractSummary(AnalysisReport report) {
181+
Map<String, SourceSummary> summary = new HashMap<>();
180182
if (report.getProviders() == null) {
181183
return summary;
182184
}
@@ -194,12 +196,11 @@ private static AnalysisReport extractSummary(AnalysisReport report) {
194196
.entrySet()
195197
.forEach(
196198
sourceEntry -> {
197-
var source = new Source();
198-
source.setSummary(sourceEntry.getValue().getSummary());
199-
provider.putSourcesItem(sourceEntry.getKey(), source);
199+
if (sourceEntry.getValue().getSummary() != null) {
200+
summary.put(sourceEntry.getKey(), sourceEntry.getValue().getSummary());
201+
}
200202
});
201203
}
202-
summary.putProvidersItem(entry.getKey(), provider);
203204
});
204205
return summary;
205206
}

0 commit comments

Comments
 (0)