From: jprocter Date: Mon, 1 Jun 2009 15:46:54 +0000 (+0000) Subject: first experiment with GA application use tracking X-Git-Tag: Release_2_5~310 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=67d61f58fbff9bdb395ebb12ed389a58e6e75a03;hp=71b9e3e554ebd93a6920d89c6e42e7b8ad9b26ce;p=jalview.git first experiment with GA application use tracking --- diff --git a/lib/JGoogleAnalytics_0.2.jar b/lib/JGoogleAnalytics_0.2.jar new file mode 100644 index 0000000..c389e1c Binary files /dev/null and b/lib/JGoogleAnalytics_0.2.jar differ diff --git a/src/jalview/bin/Cache.java b/src/jalview/bin/Cache.java index 9fe0009..dad7326 100755 --- a/src/jalview/bin/Cache.java +++ b/src/jalview/bin/Cache.java @@ -24,6 +24,9 @@ import java.util.*; import org.apache.log4j.*; import org.biojava.dasobert.dasregistry.Das1Source; +import com.boxysystems.jgoogleanalytics.FocusPoint; +import com.boxysystems.jgoogleanalytics.JGoogleAnalyticsTracker; + /** * Stores and retrieves Jalview Application Properties Lists and fields within * list entries are separated by '|' symbols unless otherwise stated (|) clauses @@ -527,5 +530,37 @@ public class Cache } return localSources; } - + + public static JGoogleAnalyticsTracker tracker=null; + + public static void initGoogleTracker() + { + if (tracker==null) + { + String vrs="No Version Accessible"; + try { + //Google analytics tracking code for Library Finder + tracker = new JGoogleAnalyticsTracker("Jalview Desktop", + (vrs=jalview.bin.Cache.getProperty("VERSION")+"_"+jalview.bin.Cache.getDefault("BUILD_DATE", "unknown")), + "UA-9060947-1"); + tracker.trackAsynchronously(new FocusPoint("Application Started.")); + } catch (RuntimeException e) + { + if (log!=null) { + log.debug("Caught runtime exception in googletracker init:",e); + } + // quietly return. + } + catch (Exception e) + { + // unexpected error + if (log!=null) + { + log.warn("Failed to initialise GoogleTracker for Jalview Desktop with version "+vrs,e); + } else { + log.warn("Failed to initialise GoogleTracker for Jalview Desktop with version "+vrs,e); + } + } + } + } } diff --git a/src/jalview/bin/Jalview.java b/src/jalview/bin/Jalview.java index 7e70bf4..bfae7e0 100755 --- a/src/jalview/bin/Jalview.java +++ b/src/jalview/bin/Jalview.java @@ -152,6 +152,13 @@ public class Jalview desktop = new Desktop(); desktop.setVisible(true); desktop.discoverer.start(); + if (!aparser.contains("nousagestats") && Cache.getDefault("USAGESTATS", true)) { + Cache.log.info("Initialising googletracker for usage stats."); + Cache.initGoogleTracker(); + Cache.log.debug("Tracking enabled."); + } else { + Cache.log.info("Not enabling Google Tracking."); + } if (!aparser.contains("noquestionnaire")) { String url = aparser.getValue("questionnaire");