Subramanya Sastry has submitted this change and it was merged.

Change subject: Improve exception handling
......................................................................


Improve exception handling

Show backtrace in error messages

Change-Id: I31599c74fb3c4e70fb7014d90747a3ec9c988279
---
M src/main/java/org/wikimedia/html5depurate/DepurateHandler.java
A src/main/java/org/wikimedia/html5depurate/Util.java
2 files changed, 21 insertions(+), 7 deletions(-)

Approvals:
  Subramanya Sastry: Verified; Looks good to me, approved



diff --git a/src/main/java/org/wikimedia/html5depurate/DepurateHandler.java 
b/src/main/java/org/wikimedia/html5depurate/DepurateHandler.java
index 857c4af..fb14157 100644
--- a/src/main/java/org/wikimedia/html5depurate/DepurateHandler.java
+++ b/src/main/java/org/wikimedia/html5depurate/DepurateHandler.java
@@ -1,8 +1,9 @@
 package org.wikimedia.html5depurate;
 
 import org.wikimedia.html5depurate.Config;
-import org.wikimedia.html5depurate.MultipartBuffer;
 import org.wikimedia.html5depurate.Depurator;
+import org.wikimedia.html5depurate.MultipartBuffer;
+import org.wikimedia.html5depurate.Util;
 
 import org.glassfish.grizzly.http.multipart.MultipartScanner;
 import org.glassfish.grizzly.http.server.HttpHandler;
@@ -120,7 +121,7 @@
                                outputBytes = Depurator.depurate(source, 
compat);
                        } catch (SAXException e) {
                                m_logger.info("Error running depurator");
-                               sendError(response, 500, "Error while parsing 
HTML: " + e.toString());
+                               sendError(response, 500, "Error while parsing 
HTML: " + Util.format(e));
                                return;
                        }
 
@@ -129,12 +130,12 @@
                        response.setBufferSize(outputBytes.length);
                        response.getOutputStream().write(outputBytes);
                } catch (IOException e) {
-                       m_logger.warning("Got IOException: " + e.toString());
-                       sendError(response, 500, "Got IOException: " + 
e.toString());
+                       m_logger.warning("Got IOException: " + Util.format(e));
+                       sendError(response, 500, "Got IOException: " + 
Util.format(e));
                } catch (Exception e) {
-                       m_logger.warning("Got unexpected exception: " + 
e.toString());
+                       m_logger.warning("Got unexpected exception: " + 
Util.format(e));
                        sendError(response, 500, "Unexpected exception: " +
-                                       e.toString());
+                                       Util.format(e));
                }
        }
 
@@ -143,7 +144,7 @@
                try {
                        response.sendError(code, message);
                } catch (IOException e) {
-                       m_logger.warning("Got IOException while sending error: 
" + e.toString());
+                       m_logger.warning("Got IOException while sending error: 
" + Util.format(e));
                }
        }
 }
diff --git a/src/main/java/org/wikimedia/html5depurate/Util.java 
b/src/main/java/org/wikimedia/html5depurate/Util.java
new file mode 100644
index 0000000..be7f762
--- /dev/null
+++ b/src/main/java/org/wikimedia/html5depurate/Util.java
@@ -0,0 +1,13 @@
+package org.wikimedia.html5depurate;
+
+import java.io.PrintWriter;
+import java.io.StringWriter;
+
+class Util {
+       public static String format(Throwable e) {
+               StringWriter sw = new StringWriter();
+               PrintWriter pw = new PrintWriter(sw);
+               e.printStackTrace(pw);
+               return sw.toString();
+       }
+}

-- 
To view, visit https://gerrit.wikimedia.org/r/281864
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I31599c74fb3c4e70fb7014d90747a3ec9c988279
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/html5depurate
Gerrit-Branch: master
Gerrit-Owner: Tim Starling <[email protected]>
Gerrit-Reviewer: Subramanya Sastry <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to