chiark / gitweb /
Show progress of various things in log, with milliseconds
authorIan Jackson <ian@liberator.relativity.greenend.org.uk>
Sun, 5 Sep 2010 11:17:55 +0000 (12:17 +0100)
committerIan Jackson <ian@liberator.relativity.greenend.org.uk>
Sun, 5 Sep 2010 11:17:55 +0000 (12:17 +0100)
src/com/tedpearson/ypp/market/MarketUploader.java

index f91de7aedd25e93cbadbb3df782e46bfee03f0f6..98c5dd8808ecbe1b1c3c21c04811f33afd495520 100644 (file)
@@ -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)
@@ -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<ArrayList<String>> headers = getData(accesstable.getAccessibleColumnHeader());
@@ -446,13 +462,18 @@ public class MarketUploader implements TopLevelWindowListener, GUIInitializedLis
                    }
                }
 
+               progresslog("table read...");
+
                ArrayList<ArrayList<String>> 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.");
        }
        
        /**