diff options
author | Jakob Heher <jakob.heher@iaik.tugraz.at> | 2022-10-06 08:47:25 +0200 |
---|---|---|
committer | Jakob Heher <jakob.heher@iaik.tugraz.at> | 2022-10-06 08:47:25 +0200 |
commit | e9a7e90fda934dd5d053127470d0b849b1b8fc4b (patch) | |
tree | d06a7d9f93cbfcce26de395341f71a364c204b90 /pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java | |
parent | 678b291306af3f913bb77b63a93e5124a6894218 (diff) | |
download | pdf-over-e9a7e90fda934dd5d053127470d0b849b1b8fc4b.tar.gz pdf-over-e9a7e90fda934dd5d053127470d0b849b1b8fc4b.tar.bz2 pdf-over-e9a7e90fda934dd5d053127470d0b849b1b8fc4b.zip |
poll for local BKU, disable/skip option if unavailable
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java')
-rw-r--r-- | pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java index fe1e3a29..1f68a020 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/bku/LocalBKUConnector.java @@ -17,7 +17,7 @@ package at.asit.pdfover.gui.bku; // Imports
import java.io.IOException;
-
+import java.net.Socket;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
@@ -45,6 +45,24 @@ public class LocalBKUConnector implements BkuSlConnector { **/
private static final Logger log = LoggerFactory.getLogger(LocalBKUConnector.class);
+ private static boolean isAvailable = false;
+ public static boolean IsAvailable() { return isAvailable; }
+ private static Thread pollingThread = new Thread(() -> {
+ while (true) {
+ try { Thread.sleep(isAvailable ? 30000 : 5000); } catch (InterruptedException e) {}
+ try (Socket socket = new Socket("127.0.0.1", 3495)) {
+ isAvailable = true;
+ } catch (IOException e) {
+ isAvailable = false;
+ }
+ }
+ }, "LocalBKUProbeThread");
+ static {
+ pollingThread.setDaemon(true);
+ pollingThread.start();
+ }
+
+
/**
* HTTP Response server HEADER
*/
|