[jbosstools-commits] JBoss Tools SVN: r24052 - in trunk/usage/org.jboss.tools.usage: src/org/jboss/tools/usage/jgoogleanalytics and 1 other directory.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Wed Aug 11 10:54:09 EDT 2010


Author: adietish
Date: 2010-08-11 10:54:08 -0400 (Wed, 11 Aug 2010)
New Revision: 24052

Added:
   trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsUrlStrategy.java
Removed:
   trunk/usage/org.jboss.tools.usage/bin/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.class
   trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.java
Modified:
   trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/EclipseEnvironment.java
   trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/HttpGetMethod.java
   trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/IGoogleAnalyticsParameters.java
   trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/JGoogleAnalyticsTracker.java
Log:
extensive url tests, slight refactorings in the code base

Deleted: trunk/usage/org.jboss.tools.usage/bin/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.class
===================================================================
(Binary files differ)

Modified: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/EclipseEnvironment.java
===================================================================
--- trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/EclipseEnvironment.java	2010-08-11 14:50:06 UTC (rev 24051)
+++ trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/EclipseEnvironment.java	2010-08-11 14:54:08 UTC (rev 24052)
@@ -143,7 +143,7 @@
 		// , browserLanguage
 		// , buildId
 		// , eclipseVersion);
-		return "EclipseEnvironment/.0.2";
+		return "EclipseEnvironment/3.0.1";
 	}
 
 	private String getEclipseVersion() {

Deleted: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.java
===================================================================
--- trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.java	2010-08-11 14:50:06 UTC (rev 24051)
+++ trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.java	2010-08-11 14:54:08 UTC (rev 24052)
@@ -1,217 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.usage.jgoogleanalytics;
-
-import java.io.UnsupportedEncodingException;
-
-import org.jboss.tools.usage.util.EncodingUtils;
-
-/**
- * URL building logic for the earlier versions of google analytics (urchin.js)
- * 
- * @author : Siddique Hameed, Andre Dietisheim
- * @version : 0.2
- */
-
-public class GoogleAnalyticsURLStrategy implements IURLBuildingStrategy {
-
-	private static final String TRACKING_URL = "http://www.google-analytics.com/__utm.gif";
-
-	private static final String ENCODING_UTF8 = "UTF-8";
-
-	private static final long TIMESTAMP = -1;
-
-	private static final int VISITS = -1;
-
-	private IGoogleAnalyticsParameters googleParameters;
-
-	public GoogleAnalyticsURLStrategy(IGoogleAnalyticsParameters googleAnalyticsParameters) {
-		this.googleParameters = googleAnalyticsParameters;
-	}
-
-	public String build(FocusPoint focusPoint) throws UnsupportedEncodingException {
-
-		/*
-		 * Google Analytics for Android:
-		 * 
-		 * String str = ""; 
-		 * if (paramEvent.action != null) 
-		 * 	str = paramEvent.action; 
-		 * if (!(str.startsWith("/"))) 
-		 * 	str = "/" + str; 
-		 * str = encode(str); 
-		 * Locale localLocale = Locale.getDefault(); 
-		 * StringBuilder localStringBuilder = new StringBuilder();
-		 * localStringBuilder.append("/__utm.gif");
-		 * localStringBuilder.append("?utmwv=4.3");
-		 * localStringBuilder.append("&utmn=").append(paramEvent.randomVal);
-		 * localStringBuilder.append("&utmcs=UTF-8");
-		 * localStringBuilder.append(String.format("&utmsr=%dx%d", new Object[] { 
-		 * 		Integer.valueOf(paramEvent.screenWidth)
-		 * 		, Integer.valueOf(paramEvent.screenHeight) }));
-		 * localStringBuilder.append(String.format("&utmul=%s-%s", new Object[] { 
-		 * 		localLocale.getLanguage()
-		 * 		, localLocale.getCountry() }));
-		 * localStringBuilder.append("&utmp=").append(str);
-		 * localStringBuilder.append("&utmac=").append(paramEvent.accountId);
-		 * localStringBuilder.append("&utmcc=").append(
-		 * 		getEscapedCookieString(paramEvent, paramString)); 
-		 * return localStringBuilder.toString();
-		 */
-
-		StringBuilder builder = new StringBuilder(TRACKING_URL)
-				.append(IGoogleAnalyticsParameters.URL_PARAM_DELIMITER);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_TRACKING_CODE_VERSION,
-				IGoogleAnalyticsParameters.VALUE_TRACKING_CODE_VERSION, builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_UNIQUE_TRACKING_NUMBER, getRandomNumber(), builder);
-		// appendParameter(IGoogleAnalyticsParameters.PARAM_HID,
-		// getRandomNumber(), builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_LANGUAGE_ENCODING, ENCODING_UTF8, builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_SCREEN_COLOR_DEPTH, googleParameters.getScreenColorDepth(),
-				builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_SCREEN_RESOLUTION, googleParameters.getScreenResolution(),
-				builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_BROWSER_LANGUAGE, googleParameters.getBrowserLanguage(),
-				builder);
-		// appendParameter(IGoogleAnalyticsParameters.PARAM_REPEAT_CAMPAIGN_VISIT,
-		// "1", builder);
-		// appendParameter(IGoogleAnalyticsParameters.PARAM_PAGE_TITLE,
-		// focusPoint.getContentTitle(), builder);
-		// appendParameter(IGoogleAnalyticsParameters.PARAM_HOST_NAME,
-		// googleParameters.getHostname(), builder);
-		// appendParameter(IGoogleAnalyticsParameters.PARAM_REFERRAL,
-		// googleParameters.getReferral(), builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_PAGE_REQUEST, focusPoint.getContentURI(), builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_ACCOUNT_NAME, googleParameters.getAccountName(), builder);
-		appendCookies(focusPoint, builder);
-		appendParameter(IGoogleAnalyticsParameters.PARAM_GAQ, "1", false, builder);
-
-		// StringBuilder builder = new StringBuilder()
-		// .append(TRACKING_URL)
-		// .append(URL_PARAM_DELIMITER);
-		// appendParameter(IGoogleAnalyticsParameters.TRACKING_CODE_VERSION,
-		// IGoogleAnalyticsParameters.URCHIN_VERSION, builder);
-		// appendParameter(IGoogleAnalyticsParameters.UNIQUE_TRACKING_NUMBER,
-		// getRandomNumber(), builder);
-		// appendParameter(IGoogleAnalyticsParameters.HOST_NAME,
-		// URLEncoder.encode(googleParameters.getHostname(), ENCODING_UTF8),
-		// builder);
-		// appendParameter(IGoogleAnalyticsParameters.REFERRAL,
-		// URLEncoder.encode(googleParameters.getReferral(), ENCODING_UTF8),
-		// builder);
-		// appendParameter(IGoogleAnalyticsParameters.PAGE_REQUEST,
-		// URLEncoder.encode(appFocusPoint.getContentURI(), ENCODING_UTF8),
-		// builder);
-		// appendParameter(IGoogleAnalyticsParameters.ACCOUNT_NAME,
-		// googleParameters.getAccountName(), builder);
-		// appendParameter(IGoogleAnalyticsParameters.COOKIE_VALUES,
-		// "__utma%3D999.999.999.999.999.1%3B", builder);
-		// appendParameter(IGoogleAnalyticsParameters.LANGUAGE_ENCODING,
-		// ENCODING_UTF8, builder);
-		// appendParameter(IGoogleAnalyticsParameters.SCREEN_RESOLUTION,
-		// googleParameters.getScreenResolution(), builder);
-		// .append("&utmvid=").append(new EclipseInstance().toString());
-		// .append("&utmip=").append(getIpAddress());
-
-		return builder.toString();
-	}
-
-	private void appendCookies(FocusPoint focusPoint, StringBuilder builder) {
-
-		StringBuilder stringBuilder = new StringBuilder();
-		stringBuilder.append(IGoogleAnalyticsParameters.PARAM_COOKIES_FIRST_VISIT)
-				.append(IGoogleAnalyticsParameters.EQUALS_SIGN)
-				.append("999.")
-				.append(googleParameters.getUserId()).append(IGoogleAnalyticsParameters.DOT)
-				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
-				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
-				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
-				.append(VISITS)
-				.append(IGoogleAnalyticsParameters.PLUS_SIGN)
-				.append(IGoogleAnalyticsParameters.PARAM_COOKIES_REFERRAL_TYPE)
-				.append(IGoogleAnalyticsParameters.EQUALS_SIGN)
-				.append("999.")
-				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
-				.append("1.1.")
-				.append(focusPoint.getContentURI());
-
-		String encodedString = EncodingUtils.checkedEncodeUtf8(stringBuilder.toString());
-		builder.append(encodedString);
-
-		// builder.append(IGoogleAnalyticsParameters.PARAM_COOKIE_VALUES)
-		// .append(IGoogleAnalyticsParameters.EQUALS_SIGN)
-		// .append("__utma%3D")
-		// .append(getRandomNumber())
-		// .append(".")
-		// .append(getRandomNumber())
-		// .append(".")
-		// .append(now)
-		// .append(".")
-		// .append(now)
-		// .append(".")
-		// .append(now)
-		// .append(".2%3B%2B)")
-		//
-		// // .append("__utmb%3D")
-		// // .append(getRandomNumber())
-		// // .append("%3B%2B__utmc%3D")
-		// // .append(getRandomNumber())
-		// // .append("%3B%2B")
-		//
-		// .append("__utmz%3D")
-		// .append(getRandomNumber())
-		// .append(".")
-		// .append(now)
-		// .append(IGoogleAnalyticsParameters.AMPERSAND);
-
-		// .append("utmcsr%3D(direct)%7C")
-		// .append("utmccn%3D(direct)%7C")
-		// .append("utmcmd%3D(none)%3B");
-
-	}
-
-	private String getRandomNumber() {
-		return Integer.toString((int) (Math.random() * 0x7fffffff));
-	}
-
-	private void appendParameter(String name, String value, StringBuilder builder) {
-		appendParameter(name, value, true, builder);
-	}
-
-	private void appendParameter(String name, String value, boolean appendAmpersand, StringBuilder builder) {
-		builder.append(name)
-				.append(IGoogleAnalyticsParameters.EQUALS_SIGN)
-				.append(value);
-		if (appendAmpersand) {
-			builder.append(IGoogleAnalyticsParameters.AMPERSAND);
-		}
-	}
-
-	// private String getIpAddress() throws SocketException {
-	// Enumeration<NetworkInterface> e1 =
-	// (Enumeration<NetworkInterface>)NetworkInterface.getNetworkInterfaces();
-	// while(e1.hasMoreElements()) {
-	// NetworkInterface ni = e1.nextElement();
-	//			
-	// System.out.print(ni.getName());
-	// System.out.print(" : [");
-	// Enumeration<InetAddress> e2 = ni.getInetAddresses();
-	// while(e2.hasMoreElements()) {
-	// InetAddress ia = e2.nextElement();
-	// System.out.print(ia);
-	// if( e2.hasMoreElements()) {
-	// System.out.print(",");
-	// }
-	// }
-	// System.out.println("]");
-	// }
-	// }
-}

Copied: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsUrlStrategy.java (from rev 24001, trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsURLStrategy.java)
===================================================================
--- trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsUrlStrategy.java	                        (rev 0)
+++ trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsUrlStrategy.java	2010-08-11 14:54:08 UTC (rev 24052)
@@ -0,0 +1,262 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.usage.jgoogleanalytics;
+
+import java.io.UnsupportedEncodingException;
+
+import org.jboss.tools.usage.util.EncodingUtils;
+
+/**
+ * URL building logic for the earlier versions of google analytics (urchin.js)
+ * 
+ * @author : Siddique Hameed, Andre Dietisheim
+ * @version : 0.2
+ */
+
+public class GoogleAnalyticsUrlStrategy implements IURLBuildingStrategy {
+
+	private static final String TRACKING_URL = "http://www.google-analytics.com/__utm.gif";
+
+	private static final String ENCODING_UTF8 = "UTF-8";
+
+	private static final long TIMESTAMP = -1;
+
+	private static final int VISITS = -1;
+
+	private IGoogleAnalyticsParameters googleParameters;
+
+	protected GoogleAnalyticsUrlStrategy(IGoogleAnalyticsParameters googleAnalyticsParameters) {
+		this.googleParameters = googleAnalyticsParameters;
+	}
+
+	public String build(FocusPoint focusPoint) throws UnsupportedEncodingException {
+		/*
+		 * Google Analytics for Android:
+		 * 
+		String str = ""; 
+		if (paramEvent.action != null) 
+			str = paramEvent.action; 
+		if (!(str.startsWith("/"))) 
+			str = "/" + str; 
+		str = encode(str); 
+		Locale localLocale = Locale.getDefault(); 
+		StringBuilder localStringBuilder = new StringBuilder();
+		localStringBuilder.append("/__utm.gif");
+		localStringBuilder.append("?utmwv=4.3");
+		localStringBuilder.append("&utmn=").append(paramEvent.randomVal);
+		localStringBuilder.append("&utmcs=UTF-8");
+		localStringBuilder.append(String.format("&utmsr=%dx%d", new Object[] { 
+			Integer.valueOf(paramEvent.screenWidth)
+			, Integer.valueOf(paramEvent.screenHeight) }));
+		localStringBuilder.append(String.format("&utmul=%s-%s", new Object[] { 
+			localLocale.getLanguage()
+			, localLocale.getCountry() }));
+		localStringBuilder.append("&utmp=").append(str);
+		localStringBuilder.append("&utmac=").append(paramEvent.accountId);
+		localStringBuilder.append("&utmcc=").append(
+		  		getEscapedCookieString(paramEvent, paramString)); 
+		return localStringBuilder.toString();
+		 
+		*
+		* getEscapedCookieString:
+		* 
+		StringBuilder localStringBuilder = new StringBuilder();
+		localStringBuilder.append("__utma=");
+		localStringBuilder.append("999").append(".");
+		localStringBuilder.append(paramEvent.userId).append(".");
+		localStringBuilder.append(paramEvent.timestampFirst).append(".");
+		localStringBuilder.append(paramEvent.timestampPrevious).append(".");
+		localStringBuilder.append(paramEvent.timestampCurrent).append(".");
+		localStringBuilder.append(paramEvent.visits);
+		if (paramString != null)
+		{
+		localStringBuilder.append("+__utmz=");
+		localStringBuilder.append("999").append(".");
+		localStringBuilder.append(paramEvent.timestampFirst).append(".");
+		localStringBuilder.append("1.1.");
+		localStringBuilder.append(paramString);
+		}
+		return encode(localStringBuilder.toString());
+
+		 */
+
+		/*
+		 * our working tracking code
+		 * 
+		http://www.google-analytics.com/__utm.gif?utmwv=4.7.2
+		&utmn=338321265
+		&utmhn=jboss.org
+		&utmcs=UTF-8
+		&utmsr=1920x1080
+		&utmsc=24-bit
+		&utmul=en-us
+		&utmje=1
+		&utmfl=10.1%20r53
+		&utmdt=-%20JBoss%20Community
+		&utmhid=1087431432
+		&utmr=0
+		&utmp=%2Ftools%2Fusage.html
+		&utmac=UA-17645367-1
+		&utmcc=__utma%3D156030500.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B
+		&gaq=1
+		 *
+		 */
+
+		StringBuilder builder = new StringBuilder(TRACKING_URL)
+				.append(IGoogleAnalyticsParameters.URL_PARAM_DELIMITER);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_TRACKING_CODE_VERSION,
+				IGoogleAnalyticsParameters.VALUE_TRACKING_CODE_VERSION, builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_UNIQUE_TRACKING_NUMBER, getRandomNumber(), builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_HID, getRandomNumber(), builder);
+		// appendParameter(IGoogleAnalyticsParameters.PARAM_HID,
+		// getRandomNumber(), builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_LANGUAGE_ENCODING, ENCODING_UTF8, builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_SCREEN_COLOR_DEPTH, googleParameters.getScreenColorDepth(),
+				builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_SCREEN_RESOLUTION, googleParameters.getScreenResolution(),
+				builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_BROWSER_LANGUAGE, googleParameters.getBrowserLanguage(),
+				builder);
+		// appendParameter(IGoogleAnalyticsParameters.PARAM_REPEAT_CAMPAIGN_VISIT,
+		// "1", builder);
+		// appendParameter(IGoogleAnalyticsParameters.PARAM_PAGE_TITLE,
+		// focusPoint.getContentTitle(), builder);
+		// appendParameter(IGoogleAnalyticsParameters.PARAM_HOST_NAME,
+		// googleParameters.getHostname(), builder);
+		// appendParameter(IGoogleAnalyticsParameters.PARAM_REFERRAL,
+		// googleParameters.getReferral(), builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_PAGE_REQUEST, focusPoint.getContentURI(), builder);
+		appendParameter(IGoogleAnalyticsParameters.PARAM_ACCOUNT_NAME, googleParameters.getAccountName(), builder);
+		appendCookies(focusPoint, builder);
+		// appendParameter(IGoogleAnalyticsParameters.PARAM_GAQ, "1", false,
+		// builder);
+
+		// StringBuilder builder = new StringBuilder()
+		// .append(TRACKING_URL)
+		// .append(URL_PARAM_DELIMITER);
+		// appendParameter(IGoogleAnalyticsParameters.TRACKING_CODE_VERSION,
+		// IGoogleAnalyticsParameters.URCHIN_VERSION, builder);
+		// appendParameter(IGoogleAnalyticsParameters.UNIQUE_TRACKING_NUMBER,
+		// getRandomNumber(), builder);
+		// appendParameter(IGoogleAnalyticsParameters.HOST_NAME,
+		// URLEncoder.encode(googleParameters.getHostname(), ENCODING_UTF8),
+		// builder);
+		// appendParameter(IGoogleAnalyticsParameters.REFERRAL,
+		// URLEncoder.encode(googleParameters.getReferral(), ENCODING_UTF8),
+		// builder);
+		// appendParameter(IGoogleAnalyticsParameters.PAGE_REQUEST,
+		// URLEncoder.encode(appFocusPoint.getContentURI(), ENCODING_UTF8),
+		// builder);
+		// appendParameter(IGoogleAnalyticsParameters.ACCOUNT_NAME,
+		// googleParameters.getAccountName(), builder);
+		// appendParameter(IGoogleAnalyticsParameters.COOKIE_VALUES,
+		// "__utma%3D999.999.999.999.999.1%3B", builder);
+		// appendParameter(IGoogleAnalyticsParameters.LANGUAGE_ENCODING,
+		// ENCODING_UTF8, builder);
+		// appendParameter(IGoogleAnalyticsParameters.SCREEN_RESOLUTION,
+		// googleParameters.getScreenResolution(), builder);
+		// .append("&utmvid=").append(new EclipseInstance().toString());
+		// .append("&utmip=").append(getIpAddress());
+
+		return builder.toString();
+	}
+
+	private void appendCookies(FocusPoint focusPoint, StringBuilder builder) {
+
+		StringBuilder stringBuilder = new StringBuilder();
+		stringBuilder.append(IGoogleAnalyticsParameters.PARAM_COOKIES_FIRST_VISIT)
+				.append(IGoogleAnalyticsParameters.EQUALS_SIGN)
+				.append("999.")
+				.append(googleParameters.getUserId()).append(IGoogleAnalyticsParameters.DOT)
+				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
+				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
+				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
+				.append(VISITS)
+				.append(IGoogleAnalyticsParameters.PLUS_SIGN)
+				.append(IGoogleAnalyticsParameters.PARAM_COOKIES_REFERRAL_TYPE)
+				.append(IGoogleAnalyticsParameters.EQUALS_SIGN)
+				.append("999.")
+				.append(TIMESTAMP).append(IGoogleAnalyticsParameters.DOT)
+				.append("1.1.")
+				.append(focusPoint.getContentURI());
+
+		String encodedString = EncodingUtils.checkedEncodeUtf8(stringBuilder.toString());
+		builder.append(encodedString);
+
+		// builder.append(IGoogleAnalyticsParameters.PARAM_COOKIE_VALUES)
+		// .append(IGoogleAnalyticsParameters.EQUALS_SIGN)
+		// .append("__utma%3D")
+		// .append(getRandomNumber())
+		// .append(".")
+		// .append(getRandomNumber())
+		// .append(".")
+		// .append(now)
+		// .append(".")
+		// .append(now)
+		// .append(".")
+		// .append(now)
+		// .append(".2%3B%2B)")
+		//
+		// // .append("__utmb%3D")
+		// // .append(getRandomNumber())
+		// // .append("%3B%2B__utmc%3D")
+		// // .append(getRandomNumber())
+		// // .append("%3B%2B")
+		//
+		// .append("__utmz%3D")
+		// .append(getRandomNumber())
+		// .append(".")
+		// .append(now)
+		// .append(IGoogleAnalyticsParameters.AMPERSAND);
+
+		// .append("utmcsr%3D(direct)%7C")
+		// .append("utmccn%3D(direct)%7C")
+		// .append("utmcmd%3D(none)%3B");
+
+	}
+
+	private String getRandomNumber() {
+		return Integer.toString((int) (Math.random() * 0x7fffffff));
+	}
+
+	private void appendParameter(String name, String value, StringBuilder builder) {
+		appendParameter(name, value, true, builder);
+	}
+
+	private void appendParameter(String name, String value, boolean appendAmpersand, StringBuilder builder) {
+		builder.append(name)
+				.append(IGoogleAnalyticsParameters.EQUALS_SIGN)
+				.append(value);
+		if (appendAmpersand) {
+			builder.append(IGoogleAnalyticsParameters.AMPERSAND);
+		}
+	}
+
+	// private String getIpAddress() throws SocketException {
+	// Enumeration<NetworkInterface> e1 =
+	// (Enumeration<NetworkInterface>)NetworkInterface.getNetworkInterfaces();
+	// while(e1.hasMoreElements()) {
+	// NetworkInterface ni = e1.nextElement();
+	//			
+	// System.out.print(ni.getName());
+	// System.out.print(" : [");
+	// Enumeration<InetAddress> e2 = ni.getInetAddresses();
+	// while(e2.hasMoreElements()) {
+	// InetAddress ia = e2.nextElement();
+	// System.out.print(ia);
+	// if( e2.hasMoreElements()) {
+	// System.out.print(",");
+	// }
+	// }
+	// System.out.println("]");
+	// }
+	// }
+}


Property changes on: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/GoogleAnalyticsUrlStrategy.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/HttpGetMethod.java
===================================================================
--- trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/HttpGetMethod.java	2010-08-11 14:50:06 UTC (rev 24051)
+++ trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/HttpGetMethod.java	2010-08-11 14:54:08 UTC (rev 24052)
@@ -24,11 +24,13 @@
 
 	private ILoggingAdapter loggingAdapter = null;
 
-	private CookieManager cookieHandler = new CookieManager();
+	private CookieManager cookieHandler;
 	private String userAgent;
 
 	public HttpGetMethod(String userAgent) {
 		this.userAgent = userAgent;
+		this.cookieHandler = new CookieManager();
+		cookieHandler.setCookiePolicy(CookiePolicy.ACCEPT_ALL);
 	}
 
 	public void setLoggingAdapter(ILoggingAdapter loggingAdapter) {
@@ -37,7 +39,7 @@
 
 	public void request(String urlString) {
 
-		CookieHandler originalCookieHandler = setupCookieHandler();
+		CookieHandler currentCookieHandler = setCookieHandler(cookieHandler);
 		try {
 			HttpURLConnection urlConnection = createURLConnection(urlString, userAgent);
 			urlConnection.connect();
@@ -50,21 +52,29 @@
 		} catch (Exception e) {
 			logError(e.getMessage());
 		} finally {
-			CookieHandler.setDefault(originalCookieHandler);
+			setCookieHandler(currentCookieHandler);
 		}
 	}
 
-	private CookieHandler setupCookieHandler() {
-		CookieHandler old = CookieHandler.getDefault();
-		cookieHandler.setCookiePolicy(CookiePolicy.ACCEPT_ALL);
-		CookieHandler.setDefault(cookieHandler);
-		return old;
-	}
-
+	/**
+	 * Returns the return code from the given {@link HttpURLConnection}.
+	 * Provided to be called by test cases so that they can retrieve the return code.
+	 * 
+	 * @param urlConnection
+	 *            to get the response code from
+	 * @return the return code the HttpUrlConnection received
+	 * @throws IOException
+	 */
 	protected int getResponseCode(HttpURLConnection urlConnection) throws IOException {
 		return urlConnection.getResponseCode();
 	}
 
+	private CookieHandler setCookieHandler(CookieHandler cookieHandler) {
+		CookieHandler currentCookieHandler = CookieHandler.getDefault();
+		CookieHandler.setDefault(cookieHandler);
+		return currentCookieHandler;
+	}
+
 	protected HttpURLConnection createURLConnection(String urlString, String userAgent) throws IOException {
 		URL url = new URL(urlString);
 		HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();

Modified: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/IGoogleAnalyticsParameters.java
===================================================================
--- trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/IGoogleAnalyticsParameters.java	2010-08-11 14:50:06 UTC (rev 24051)
+++ trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/IGoogleAnalyticsParameters.java	2010-08-11 14:54:08 UTC (rev 24052)
@@ -43,7 +43,8 @@
 	public static final String PARAM_PAGE_TITLE = "utmdt";
 	public static final String PARAM_GAQ = "gaq";
 	
-	public static final String VALUE_TRACKING_CODE_VERSION = "4.3";
+	
+	public static final String VALUE_TRACKING_CODE_VERSION = "4.7.2";
 	public static final String VALUE_NO_REFERRAL = "-";
 	public static final char PLUS_SIGN = '+';
 	public static final String PARAM_COOKIES_REFERRAL_TYPE = "__utmz";

Modified: trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/JGoogleAnalyticsTracker.java
===================================================================
--- trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/JGoogleAnalyticsTracker.java	2010-08-11 14:50:06 UTC (rev 24051)
+++ trunk/usage/org.jboss.tools.usage/src/org/jboss/tools/usage/jgoogleanalytics/JGoogleAnalyticsTracker.java	2010-08-11 14:54:08 UTC (rev 24052)
@@ -41,7 +41,7 @@
 	 */
 	public JGoogleAnalyticsTracker(IGoogleAnalyticsParameters googleParameters) {
 		this.httpRequest = new HttpGetMethod(googleParameters.getUserAgent());
-		this.urlBuildingStrategy = new GoogleAnalyticsURLStrategy(googleParameters);
+		this.urlBuildingStrategy = new GoogleAnalyticsUrlStrategy(googleParameters);
 	}
 
 	/**



More information about the jbosstools-commits mailing list