From 7173abc65c6db9253f24337385f2c5202567db5e Mon Sep 17 00:00:00 2001 From: Marcus Rockwell Date: Wed, 13 Nov 2024 12:30:16 -0500 Subject: [PATCH] updated swing worker --- .../src/main/java/trick/tv/TVApplication.java | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/trick_source/java/src/main/java/trick/tv/TVApplication.java b/trick_source/java/src/main/java/trick/tv/TVApplication.java index 388dd860..7e1067eb 100644 --- a/trick_source/java/src/main/java/trick/tv/TVApplication.java +++ b/trick_source/java/src/main/java/trick/tv/TVApplication.java @@ -25,6 +25,7 @@ import java.io.IOException; import java.io.StringReader; import java.lang.reflect.ParameterizedType; import java.net.URI; +import java.time.LocalTime; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -142,7 +143,7 @@ public class TVApplication extends RunTimeTrickApplication implements VariableLi Collection rootInstances; /** the S_sie.resource parsing thread */ - SwingWorker sieSwingWorker; + SwingWorker sieSwingWorker; /** exposes the variable hierarchy */ protected TVVariableTree variableTree; @@ -1158,7 +1159,7 @@ public class TVApplication extends RunTimeTrickApplication implements VariableLi * results */ private void processSieFile() { - sieSwingWorker = new SwingWorker() { + sieSwingWorker = new SwingWorker() { { execute(); @@ -1166,7 +1167,7 @@ public class TVApplication extends RunTimeTrickApplication implements VariableLi @Override public Void doInBackground() throws Exception { - statusLabel.setText("Receiving S_sie.resource file"); + publish("Receiving S_sie.resource file"); VariableServerConnection sieChannel = new VariableServerConnection(getHostName(), getPort()); //sieChannel.setDebugLevel(3); @@ -1203,13 +1204,21 @@ public class TVApplication extends RunTimeTrickApplication implements VariableLi sieChannel.close(); if (!isCancelled()) { - statusLabel.setText("Parsing S_sie.resource file"); + publish("Parsing S_sie.resource file"); rootInstances = SieResourceDomParser.parse(new InputSource(new StringReader(sieData.toString()))); } return null; } + @Override + protected void process(List chunks) { + int length = chunks.size(); + if (length > 0) { + statusLabel.setText(chunks.get(length - 1)); + } + } + @Override protected void done() { statusLabel.setText(null);