Skip to content

Commit

Permalink
CLI: TextOutputWriter manage errors #TASK-5166
Browse files Browse the repository at this point in the history
  • Loading branch information
juanfeSanahuja committed Oct 27, 2023
1 parent e037913 commit 686cf70
Showing 1 changed file with 21 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -88,22 +88,14 @@ public void print(RestResponse queryResponse) {
throw new RuntimeException(e);
}

/* // if (queryResponse != null && queryResponse.getType().equals(QueryType.VOID)) {
if (queryResponse.getEvents() != null) {
for (Event event : ((RestResponse<Object>)queryResponse.getResponses().get(0)).getEvents()) {
if (StringUtils.isNotEmpty(event.getMessage())) {
if (event.getType().equals(Event.Type.ERROR)) {
PrintUtils.printError(event.getMessage());
} else {
PrintUtils.printInfo(event.getMessage());
}
} else {
PrintUtils.printError(event.getMessage());
}
if (queryResponse != null && queryResponse.getType().equals(QueryType.VOID)) {
if (queryResponse.getResponses() != null && queryResponse.getResponses().size() > 0) {
manageEvents(((RestResponse<Object>) queryResponse.getResponses().get(0)).getEvents());
} else if (queryResponse.getEvents() != null && queryResponse.getEvents().size() > 0) {
manageEvents(queryResponse.getEvents());
}
return;
}
// return;
// }
if (checkErrors(queryResponse) && queryResponse.allResultsSize() == 0) {
return;
}
Expand All @@ -112,11 +104,9 @@ public void print(RestResponse queryResponse) {
return;
}

ps.print(printMetadata(queryResponse));
*/
List<DataResult> queryResultList = queryResponse.getResponses();

List<DataResult> queryResultList = queryResponse.getResponses();

if (CollectionUtils.isNotEmpty(queryResultList) && ((OpenCGAResult) queryResultList.get(0)) != null
&& ((OpenCGAResult) queryResultList.get(0)).getNumMatches() > -1 && !isEdition(queryResultList) && isNotAnIdOrMessage(queryResultList)) {
Expand Down Expand Up @@ -183,6 +173,20 @@ public void print(RestResponse queryResponse) {
}
}

private void manageEvents(final List<Event> events) {
for (Event event : events) {
if (StringUtils.isNotEmpty(event.getMessage())) {
if (event.getType().equals(Event.Type.ERROR)) {
PrintUtils.printError(event.getMessage());
} else {
PrintUtils.printInfo(event.getMessage());
}
} else {
PrintUtils.printError(event.getMessage());
}
}
}

private boolean isNotAnIdOrMessage(List<DataResult> queryResultList) {
return !(queryResultList.get(0).getResultType().equals("java.lang.String") &&
((OpenCGAResult) queryResultList.get(0)).getNumMatches() == 1);
Expand Down

0 comments on commit 686cf70

Please sign in to comment.