X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=jarrg-ian.git;a=blobdiff_plain;f=src%2Fcom%2Ftedpearson%2Fypp%2Fmarket%2FMarketUploader.java;h=98c5dd8808ecbe1b1c3c21c04811f33afd495520;hp=1b111cf1494bad083bdfde5483051fd49c8d3993;hb=b4fbcc4b1b6ac5c88c747fbd98b51935fe8150d6;hpb=bc8471453c90b29dc162119866f0f2b73dec5081 diff --git a/src/com/tedpearson/ypp/market/MarketUploader.java b/src/com/tedpearson/ypp/market/MarketUploader.java index 1b111cf..98c5dd8 100644 --- a/src/com/tedpearson/ypp/market/MarketUploader.java +++ b/src/com/tedpearson/ypp/market/MarketUploader.java @@ -40,6 +40,7 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis private JButton findMarket = null; private JLabel resultSummary = null; private JLabel arbitrageResult = null; + private long startTime = 0; private final static String PCTB_LIVE_HOST_URL = "http://pctb.crabdance.com/"; private final static String PCTB_TEST_HOST_URL = "http://pctb.ilk.org/"; @@ -89,6 +90,11 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis } } + private void progresslog(String s) { + long now = new Date().getTime(); + System.out.println("progress "+(now - startTime)+"ms "+s); + } + private void progressNote(ProgressMonitor pm, String s) { String arb = null; if (arbitrageResult != null) @@ -260,7 +266,7 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis if (window.getAccessibleContext().getAccessibleName().equals("Puzzle Pirates")) frame.setVisible(true); return; } - frame = new JFrame("MarketUploader"); + frame = new JFrame("Jarrg Uploader"); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); GridLayout layout = new GridLayout(2,1); frame.getContentPane().setLayout(layout); @@ -272,6 +278,7 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis findMarket.setEnabled(false); new Thread() { public void run() { + startTime = new Date().getTime(); resultSummary.setText(""); arbitrageResult.setText(""); try { @@ -393,6 +400,8 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis * @exception Exception if an error we didn't expect occured */ private void runPCTB() throws Exception { + progresslog("starting"); + String yarrgts = ""; ProgressMonitor pm = new ProgressMonitor(frame,"Processing Market Data","Getting table data",0,100); pm.setMillisToDecideToPopup(0); @@ -400,7 +409,9 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis boolean doneyarrg = false, donepctb = false; if (uploadToYarrg) { + progresslog("yarrg timestamp..."); yarrgts = getYarrgTimestamp(); + progresslog("yarrg timestamp done."); } AccessibleTable accesstable = findMarketTable(); @@ -417,13 +428,18 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis return; } + progresslog("getisland..."); getIsland(); + progresslog("getocean..."); getOcean(); + progresslog("getocean done"); if (latch != null) { latch.await(2, java.util.concurrent.TimeUnit.SECONDS); } + progresslog("table check..."); + String headings_expected[] = new String[] { "Commodity", "Trading outlet", "Buy price", "Will buy", "Sell price", "Will sell" }; ArrayList> headers = getData(accesstable.getAccessibleColumnHeader()); @@ -446,13 +462,18 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis } } + progresslog("table read..."); + ArrayList> data = getData(accesstable); if (showArbitrage) { + progresslog("arbitrage..."); calculateArbitrage(data); + progresslog("arbitrage done."); } if (uploadToYarrg && yarrgts != null) { + progresslog("yarrg prepare..."); progressNote(pm, "Yarrg: Preparing data"); pm.setProgress(10); @@ -474,15 +495,18 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis yarrgdata = yarrgsb.toString(); progressNote(pm, "Yarrg: Uploading"); + progresslog("yarrg upload..."); if (islandName != null) { doneyarrg = runYarrg(yarrgts, oceanName, islandName, yarrgdata); } else { System.out.println("Couldn't upload to Yarrg - no island name found"); } + progresslog("yarrg done."); } if (uploadToPCTB) { + progresslog("pctb prepare..."); progressNote(pm, "PCTB: Getting stall names"); pm.setProgress(20); if(pm.isCanceled()) { @@ -521,14 +545,18 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis dos.writeBytes(getAbbrevStallList(stallMap)); writeBuySellOffers(buys,sells,offerCount,out); out.finish(); + progresslog("pctb send..."); InputStream in = sendInitialData(new ByteArrayInputStream(outStream.toByteArray())); + progresslog("pctb sent."); if (in == null) return; pm.setProgress(80); if(pm.isCanceled()) { return; } progressNote(pm, "PCTB: Waiting ..."); + progresslog("pctb finish..."); donepctb = finishUpload(in); + progresslog("pctb done."); } pm.setProgress(100); @@ -540,6 +568,7 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis } else { resultSummary.setText("uploaded nowhere!"); } + progresslog("done."); } /**