From c343f3639ff2317d1504c1da343d86bc312f41db Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Thu, 1 Dec 2016 12:22:40 -0500 Subject: [PATCH] LP#1646166 Hatch Java docs continued Signed-off-by: Bill Erickson --- src/org/evergreen_ils/hatch/Hatch.java | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/src/org/evergreen_ils/hatch/Hatch.java b/src/org/evergreen_ils/hatch/Hatch.java index 9a8759b..8773fc6 100644 --- a/src/org/evergreen_ils/hatch/Hatch.java +++ b/src/org/evergreen_ils/hatch/Hatch.java @@ -34,7 +34,32 @@ import java.util.concurrent.LinkedBlockingQueue; /** * Main class for Hatch. * - * TODO + * Data flow: + * + * 1. MessageIO::MessageReader thread reads messages on STDIN and queues + * them for later processing by the RequestHandler thread. + * + * 2. RequestHandler thread collects and unpacks the request for processing. + * + * 2a. Non-print requests (e.g. file IO) are handled within the + * RequestHandler thread. + * + * 2a1. RequestHandler puts responses into the MessageIO::MessageWriter + * outbound message queue. + * + * 2b. Print requests are added to the Hatch print request queue. + * + * 2b1. The PrintRequestShuffler thread passes print requests from the + * print request queue to the FX thread for future processing. + * + * 2b2. The FX thread renders and prints the HTML + * + * 2b3. The FX thread puts responses into the MessageIO::MessageWriter + * outbound message queue (via PrintManager) once printing is + * complete. + * + * 3. MessageIO::MessageWriter pulls messages from the outbound queue + * and writes them to STDOUT. * * Beware: On Mac OS, the "FX Application Thread" is renamed to * "AppKit Thread" when the first call to print() or showPrintDialog() -- 2.11.0