From 7ada43fda763ad0d9fd087d6f18158a96e76e7f9 Mon Sep 17 00:00:00 2001 From: vagisha Date: Wed, 5 Feb 2025 08:56:58 -0800 Subject: [PATCH] Issue 51372: ProteomeXchangeServiceException in org.labkey.panoramapublic.proteomexchange.ProteomeXchangeService.postPxXml() (#501) - ProteomeXchangeServiceException implements SkipMothershipLogging. Added logging --- .../proteomexchange/ProteomeXchangeService.java | 7 ++++++- .../proteomexchange/ProteomeXchangeServiceException.java | 4 +++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeService.java b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeService.java index 1497b8cb..01da7628 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeService.java +++ b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeService.java @@ -24,8 +24,10 @@ import org.apache.hc.core5.http.HttpEntity; import org.apache.hc.core5.http.ParseException; import org.apache.hc.core5.http.io.entity.EntityUtils; +import org.apache.logging.log4j.Logger; import org.jetbrains.annotations.NotNull; import org.labkey.api.util.PageFlowUtil; +import org.labkey.api.util.logging.LogHelper; import java.io.File; import java.io.IOException; @@ -45,6 +47,8 @@ public class ProteomeXchangeService private enum METHOD {submitDataset, validateXML, requestID} + private static final Logger LOG = LogHelper.getLogger(ProteomeXchangeService.class, "Handles requests to the ProteomeXchange server"); + public static String validatePxXml(File pxxmlFile, boolean testDatabase, String user, String pass) throws ProteomeXchangeServiceException { return postPxXml(pxxmlFile, testDatabase, user, pass, METHOD.validateXML); @@ -86,7 +90,7 @@ public static String getPxIdResponse(boolean testDatabase, String user, String p } catch (Exception e) { - throw new ProteomeXchangeServiceException("Error requesting a ID from ProteomeXchange.", e); + throw new ProteomeXchangeServiceException("Error requesting a ID from ProteomeXchange. " + e.getMessage(), e); } return responseMessage; @@ -160,6 +164,7 @@ private static String postRequest(MultipartEntityBuilder builder) throws IOExcep int statusCode = response.getCode(); if (statusCode != 200) { + LOG.error("Unsuccessful request to ProteomeXchange. Status code: " + statusCode + "; Response: " + responseMessage); throw new ProteomeXchangeServiceException("Error " + statusCode + " from ProteomeXchange server: " + responseMessage); } return responseMessage; diff --git a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeServiceException.java b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeServiceException.java index a8de0309..02ca2f94 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeServiceException.java +++ b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ProteomeXchangeServiceException.java @@ -15,7 +15,9 @@ */ package org.labkey.panoramapublic.proteomexchange; -public class ProteomeXchangeServiceException extends Exception +import org.labkey.api.util.SkipMothershipLogging; + +public class ProteomeXchangeServiceException extends Exception implements SkipMothershipLogging { public ProteomeXchangeServiceException(String message, Throwable cause) {