From: Bill Erickson Date: Thu, 24 Apr 2014 20:29:17 +0000 (-0400) Subject: hatch : start msg thread before printing to ensure failed jobs don't kill the whole... X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=e27a4bec1a04ecde3fa250faff8ac2906e106cb1;p=working%2FHatch.git hatch : start msg thread before printing to ensure failed jobs don't kill the whole process; more logging Signed-off-by: Bill Erickson --- diff --git a/src/org/evergreen_ils/hatch/Hatch.java b/src/org/evergreen_ils/hatch/Hatch.java index 60e8d0500b..7e9ad7418f 100644 --- a/src/org/evergreen_ils/hatch/Hatch.java +++ b/src/org/evergreen_ils/hatch/Hatch.java @@ -168,14 +168,6 @@ public class Hatch extends Application { Platform.runLater(new Runnable() { @Override public void run() { new PrintManager().print(browser.webEngine, params); - - // don't start a new message listener thread - // until we are done with this print call. - // otherwise, we risk running parallel print - // operations and that could be bad... not sure. - // In the meantime, pending messages will be - // sitting in the WebSocket input buffers. - startMsgTask(); } }); } @@ -183,6 +175,10 @@ public class Hatch extends Application { logger.info("printing " + content.length() + " bytes of " + contentType); browser.webEngine.loadContent(content, contentType); + + // After queueing up the HTML for printing, go back to listening + // for new messages. + startMsgTask(); } /** diff --git a/src/org/evergreen_ils/hatch/PrintManager.java b/src/org/evergreen_ils/hatch/PrintManager.java index bfe908cb8f..f2dea53881 100644 --- a/src/org/evergreen_ils/hatch/PrintManager.java +++ b/src/org/evergreen_ils/hatch/PrintManager.java @@ -116,7 +116,11 @@ public class PrintManager { logger.info("No print dialog requested"); } - logger.info("printing..."); + Thread[] all = new Thread[100]; + int count = Thread.currentThread().enumerate(all); + logger.info(count + " active threads in print"); + logger.info("Thread " + Thread.currentThread().getId() + " printing..."); + engine.print(job); logger.info("after print");