Author: adietish
Date: 2010-08-17 08:46:48 -0400 (Tue, 17 Aug 2010)
New Revision: 24211
Modified:
trunk/usage/plugins/org.jboss.tools.usage/JBoss Usage Reporter.launch
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/Tracker.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReport.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReportDispatcher.java
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java
Log:
[JBIDE-6376] classes refactored: clean separation of tracking code / google analytics
specific code
Modified: trunk/usage/plugins/org.jboss.tools.usage/JBoss Usage Reporter.launch
===================================================================
--- trunk/usage/plugins/org.jboss.tools.usage/JBoss Usage Reporter.launch 2010-08-17
12:45:32 UTC (rev 24210)
+++ trunk/usage/plugins/org.jboss.tools.usage/JBoss Usage Reporter.launch 2010-08-17
12:46:48 UTC (rev 24211)
@@ -24,13 +24,13 @@
<booleanAttribute key="pde.generated.config" value="false"/>
<stringAttribute key="pde.version" value="3.3"/>
<stringAttribute key="product"
value="com.jboss.jbds.product.product"/>
-<stringAttribute key="selected_target_plugins"
value="org.eclipse.equinox.security@default:default,org.jboss.tools.xulrunner.initializer@default:false,org.eclipse.jface@default:default,org.eclipse.swt.cocoa.macosx@default:false,org.eclipse.osgi,org.eclipse.ui.workbench@default:default,org.eclipse.core.databinding@default:default,org.eclipse.equinox.common@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.core.runtime@default:true,org.eclipse.ui@default:default,org.eclipse.jface.text@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,javax.transaction@default:false,org.eclipse.core.contenttype@default:default,javax.servlet@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,com.ibm.icu@default:default,org.eclipse.core.filesystem@default:default,org.eclipse.core.resources@default:default,org.eclipse.equinox.!
p2.metadata.repository@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.core.commands@default:default,org.eclipse.ant.core@default:default,org.junit4@default:default,org.eclipse.core.net@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.core.resources.compatibility@default:false,org.eclipse.equinox.concurrent@default:default,org.eclipse.ecf@default:default,org.eclipse.text@default:default,org.hamcrest.core@default:default,org.eclipse.core.variables@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.swt@default:default,org.eclipse.osgi.services@default:default,org.eclipse.equinox.app@default:default,org.eclipse.ui.ide@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.help@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ui.cocoa@default:false,org.eclipse.j!
face.databinding@default:default,org.eclipse.equinox.transform!
s.hook@d
efault:false,org.eclipse.core.filesystem.macosx@default:false,org.eclipse.ecf.filetransfer@default:default,org.eclipse.equinox.security.macosx@default:false,org.eclipse.equinox.p2.repository@default:default,org.eclipse.core.jobs@default:default,org.eclipse.ui.forms@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.ui.views@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.core.runtime.compatibility.registry@default:false"/>
+<stringAttribute key="selected_target_plugins"
value="org.eclipse.core.commands@default:default,org.eclipse.equinox.security.macosx@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.core.resources@default:default,com.ibm.icu@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.common@2:true,org.eclipse.core.contenttype@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.core.resources.compatibility@default:false,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.mortbay.jetty.server@default:default,org.eclipse.help.base@default:default,org.apache.ant@default:default,com.springsource.javax.el@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.osgi.services@default:default,org.eclipse.ecf@default:default,com.springsource.javax.servlet.jsp@default:de!
fault,org.junit4@default:default,org.eclipse.ui@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.core.filesystem@default:default,org.eclipse.ant.core@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.help@default:default,org.eclipse.swt.cocoa.macosx@default:false,org.eclipse.ui.cocoa@default:false,org.eclipse.core.runtime@default:true,com.springsource.javax.servlet@default:default,org.eclipse.ui.intro.universal@default:default,javax.servlet@default:default,org.eclipse.core.net@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.text@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.dat!
abinding.property@default:default,org.eclipse.equinox.p2.metad!
ata.repo
sitory@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.jface@default:default,org.apache.lucene@default:default,org.eclipse.swt@default:default,javax.transaction@default:false,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.core.jobs@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.jface.text@default:default,org.apache.jasper@default:default,org.apache.commons.el@default:default,org.eclipse.help.ui@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.ui.forms@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.filesystem.macosx@default:false,org.jboss.tools.xulrunner.initializer@default:false,org.eclipse.equinox.p2.engine@default:default,com.springsource.org.apache.c!
ommons.logging@default:default,org.eclipse.ui.views@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.core.variables@default:default,org.eclipse.osgi@-1:true,org.hamcrest.core@default:default,com.jboss.jbds.product@default:default,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.equinox.security@default:default,org.eclipse.equinox.transforms.hook@default:false,org.apache.lucene.analysis@default:default,org.eclipse.equinox.concurrent@default:default,org.eclipse.compare.core@default:default,org.mortbay.jetty.util@default:default,org.eclipse.equinox.p2.repository@default:default"/>
<stringAttribute key="selected_workspace_plugins"
value="org.jboss.tools.usage.test@default:default,org.jboss.tools.usage@default:default"/>
<booleanAttribute key="show_selected_only" value="false"/>
<booleanAttribute key="tracing" value="false"/>
<booleanAttribute key="useCustomFeatures" value="false"/>
<booleanAttribute key="useDefaultConfig" value="true"/>
<booleanAttribute key="useDefaultConfigArea" value="true"/>
-<booleanAttribute key="useProduct" value="false"/>
+<booleanAttribute key="useProduct" value="true"/>
<booleanAttribute key="usefeatures" value="false"/>
</launchConfiguration>
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/Tracker.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/Tracker.java 2010-08-17
12:45:32 UTC (rev 24210)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/Tracker.java 2010-08-17
12:46:48 UTC (rev 24211)
@@ -30,10 +30,10 @@
private HttpGetMethod httpRequest;
private ILoggingAdapter loggingAdapter;
- public Tracker(IGoogleAnalyticsParameters googleParameters, ILoggingAdapter
loggingAdapter) {
- this.httpRequest = new HttpGetMethod(googleParameters.getUserAgent(), loggingAdapter);
+ public Tracker(IURLBuildingStrategy urlBuildingStrategy, String userAgent,
ILoggingAdapter loggingAdapter) {
+ this.httpRequest = new HttpGetMethod(userAgent, loggingAdapter);
this.loggingAdapter = loggingAdapter;
- this.urlBuildingStrategy = new GoogleAnalyticsUrlStrategy(googleParameters);
+ this.urlBuildingStrategy = urlBuildingStrategy;
}
public void trackSynchronously(FocusPoint focusPoint) throws
UnsupportedEncodingException {
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReport.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReport.java 2010-08-17
12:45:32 UTC (rev 24210)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReport.java 2010-08-17
12:46:48 UTC (rev 24211)
@@ -19,6 +19,7 @@
import org.jboss.tools.usage.googleanalytics.FocusPoint;
import org.jboss.tools.usage.googleanalytics.IGoogleAnalyticsParameters;
import org.jboss.tools.usage.googleanalytics.ILoggingAdapter;
+import org.jboss.tools.usage.googleanalytics.IURLBuildingStrategy;
import org.jboss.tools.usage.googleanalytics.Tracker;
import org.jboss.tools.usage.preferences.IUsageReportPreferenceConstants;
import org.jboss.tools.usage.util.StatusUtils;
@@ -26,7 +27,7 @@
public class UsageReport {
- private static final String GANALYTICS_TRACKINGCODE = "UA-17645367-1";
+ private static final String GANALYTICS_ACCOUNTNAME = "UA-17645367-1";
private static final String HOST_NAME = "jboss.org";
@@ -68,12 +69,12 @@
private ITracker getAnalyticsTracker() {
IGoogleAnalyticsParameters eclipseSettings = new EclipseEnvironment(
- GANALYTICS_TRACKINGCODE
+ GANALYTICS_ACCOUNTNAME
, HOST_NAME
, IGoogleAnalyticsParameters.VALUE_NO_REFERRAL);
ILoggingAdapter loggingAdapter = new
PluginLogger(JBossToolsUsageActivator.getDefault());
- Tracker tracker = new Tracker(eclipseSettings, loggingAdapter);
- return tracker;
+ IURLBuildingStrategy urlStrategy = new GoogleAnalyticsUrlStrategy(eclipseSettings);
+ return new Tracker(urlStrategy, eclipseSettings.getUserAgent(), loggingAdapter);
}
private boolean isAskUser() {
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReportDispatcher.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReportDispatcher.java 2010-08-17
12:45:32 UTC (rev 24210)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/UsageReportDispatcher.java 2010-08-17
12:46:48 UTC (rev 24211)
@@ -12,7 +12,6 @@
import org.eclipse.ui.IStartup;
/**
- *
* @author Andre Dieitsheim
*/
public class UsageReportDispatcher implements IStartup {
Modified:
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java
===================================================================
---
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java 2010-08-17
12:45:32 UTC (rev 24210)
+++
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java 2010-08-17
12:46:48 UTC (rev 24211)
@@ -15,7 +15,9 @@
import org.jboss.tools.usage.googleanalytics.FocusPoint;
import org.jboss.tools.usage.googleanalytics.IGoogleAnalyticsParameters;
import org.jboss.tools.usage.googleanalytics.ILoggingAdapter;
+import org.jboss.tools.usage.googleanalytics.IURLBuildingStrategy;
import org.jboss.tools.usage.googleanalytics.Tracker;
+import org.jboss.tools.usage.internal.GoogleAnalyticsUrlStrategy;
import org.jboss.tools.usage.internal.PluginLogger;
import org.jboss.tools.usage.test.internal.JBossToolsUsageTestActivator;
import org.junit.Test;
@@ -49,6 +51,7 @@
IGoogleAnalyticsParameters eclipseSettings = new EclipseEnvironmentFake(
GANALYTICS_ACCOUNTNAME, HOST_NAME, JBossToolsUsageTestActivator.PLUGIN_ID,
Platform.OS_LINUX, LOCALE_US);
ILoggingAdapter loggingAdapter = new
PluginLogger(JBossToolsUsageTestActivator.getDefault());
- return new Tracker(eclipseSettings, loggingAdapter);
+ IURLBuildingStrategy urlStrategy = new GoogleAnalyticsUrlStrategy(eclipseSettings);
+ return new Tracker(urlStrategy, eclipseSettings.getUserAgent(), loggingAdapter);
}
}