X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?a=blobdiff_plain;f=src%2Fcom%2Ftedpearson%2Fypp%2Fmarket%2FMarketUploader.java;h=d46125b42a13b832082e6db4d44ddf4473c90b27;hb=c32322b39d5acabf016ace70cdd0718e8f3938b5;hp=756dec36730d16b4c2aac1c1a2a99b48a0c2ba54;hpb=0f400614f8bfee25c1de335148b389e667368dd3;p=jarrg-ian.git diff --git a/src/com/tedpearson/ypp/market/MarketUploader.java b/src/com/tedpearson/ypp/market/MarketUploader.java index 756dec3..d46125b 100644 --- a/src/com/tedpearson/ypp/market/MarketUploader.java +++ b/src/com/tedpearson/ypp/market/MarketUploader.java @@ -20,28 +20,19 @@ import com.myjavatools.web.ClientHttpRequest; import java.util.regex.*; import java.util.prefs.Preferences; import java.beans.*; -import com.tedpearson.util.update.*; - -/* - TODO: - allow adding new islands - allow adding new oceans -*/ /** -* MarketUploader is a class that handles the uploading of market data from -* Yohoho! Puzzle Pirates. Currently, it must be launched in the save Java -* Virtual Machine as YPP. This is handled by a sister "helper" class, -* {@link MarketUploaderRunner}. -*
-* MarketUploader initializes after the main YPP window has initialized. It
-* provides a simple window with a "Capture Market Data" button displayed.
-* Upon clicking this button, a progress dialog is displayed, and the data
-* is processed and submitted to the Pirate Commodities Trader with Bleach (PCTB)
-* web server. If any errors occur, an error dialog is shown, and processing
-* returns, the button becoming re-enabled.
-*
-* @see MarketUploaderRunner
+* MarketUploader is a class that handles the uploading of market
+* data from Yohoho! Puzzle Pirates via the Java Accessibility
+* API.
+*
+* MarketUploader initializes after the main YPP window has
+* initialized. It provides a simple window with a "Capture
+* Market Data" button displayed. Upon clicking this button, a
+* progress dialog is displayed, and the data is processed and
+* submitted to the YARRG and PCTB servers. If any errors occur,
+* an error dialog is shown, and processing returns, the button
+* becoming re-enabled.
*/
public class MarketUploader implements TopLevelWindowListener, GUIInitializedListener {
private JFrame frame = null;
@@ -54,8 +45,9 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis
// Yarrg protocol parameters
private final static String YARRG_CLIENTNAME = "jpctb greenend";
- private final static String YARRG_CLIENTVERSION = "0.1";
- private final static String YARRG_CLIENTFIXES = "";
+ private final static String YARRG_CLIENTVERSION =
+ com.tedpearson.ypp.market.Version.version;
+ private final static String YARRG_CLIENTFIXES = "bug-094";
private final static String YARRG_LIVE_URL = "http://upload.yarrg.chiark.net/commod-update-receiver";
private final static String YARRG_TEST_URL = "http://upload.yarrg.chiark.net/test/commod-update-receiver";
private String YARRG_URL;
@@ -223,17 +215,11 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis
}
/**
- * Entry point. Remove modified files and replace with backups.
- * Register the jar file we are running from to be deleted upon quit.
- * Finally, conditionally set up the GUI.
+ * Entry point. Read our preferences.
*/
public MarketUploader() {
// check if we've been turned off in the control panel
Preferences prefs = Preferences.userNodeForPackage(getClass());
- boolean launch = prefs.getBoolean("launchAtStartup", true);
- if(!launch) {
- return;
- }
if (prefs.getBoolean("useLiveServers", false)) {
YARRG_URL = YARRG_LIVE_URL;
@@ -255,8 +241,9 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis
}
/**
- * Set up the GUI, with its window and one-button interface. Only initialize
- * if we're running alongside a Window named "Puzzle Pirates" though.
+ * Set up the GUI, with its window and one-button
+ * interface. Only initialize if we're running alongside
+ * a Window named "Puzzle Pirates" though.
*/
private void createGUI() {
if (frame != null && window != null) {
@@ -305,10 +292,8 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis
Accessible leagueTracker = descendNodes(window,new int[] {0,1,0,0,2,1,1,1});
try {
- latch = new java.util.concurrent.CountDownLatch(0);
islandName = ((JLabel)leagueTracker).getToolTipText();
} catch (NullPointerException e) {
-
// evidently we're actually on an island
islandName = null;
@@ -390,7 +375,9 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis
getIsland();
getOcean();
- latch.await(2, java.util.concurrent.TimeUnit.SECONDS);
+ if (latch != null) {
+ latch.await(2, java.util.concurrent.TimeUnit.SECONDS);
+ }
ArrayList