Author: adietish
Date: 2010-09-28 09:01:37 -0400 (Tue, 28 Sep 2010)
New Revision: 25261
Added:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferences.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencesUtils.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsEclipseEnvironment.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties
Removed:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingEclipseEnvironment.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportPreferences.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/util/DateUtils.java
Modified:
trunk/usage/plugins/org.jboss.tools.usage/META-INF/MANIFEST.MF
trunk/usage/plugins/org.jboss.tools.usage/plugin.xml
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/AbstractGoogleAnalyticsParameters.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/IJBossToolsEclipseEnvironment.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/eclipse/AbstractEclipseEnvironment.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/JBossToolsUsageActivator.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/IUsageReportPreferenceConstants.java
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportDispatcher.java
Log:
[7144] first implementation, package structure refactored, eclipse environment refactored
to (pluign-) singleton
Modified: trunk/usage/plugins/org.jboss.tools.usage/META-INF/MANIFEST.MF
===================================================================
--- trunk/usage/plugins/org.jboss.tools.usage/META-INF/MANIFEST.MF 2010-09-28 12:58:29 UTC
(rev 25260)
+++ trunk/usage/plugins/org.jboss.tools.usage/META-INF/MANIFEST.MF 2010-09-28 13:01:37 UTC
(rev 25261)
@@ -8,8 +8,8 @@
org.jboss.tools.usage.googleanalytics.eclipse,
org.jboss.tools.usage.http,
org.jboss.tools.usage.internal;x-friends:="org.jboss.tools.usage.test",
- org.jboss.tools.usage.preferences;x-friends:="org.jboss.tools.usage.test",
- org.jboss.tools.usage.reporting;x-friends:="org.jboss.tools.usage.test",
+
org.jboss.tools.usage.internal.preferences;x-friends:="org.jboss.tools.usage.test",
+
org.jboss.tools.usage.internal.reporting;x-friends:="org.jboss.tools.usage.test",
org.jboss.tools.usage.tracker,
org.jboss.tools.usage.tracker.internal;x-friends:="org.jboss.tools.usage.test",
org.jboss.tools.usage.util,
Modified: trunk/usage/plugins/org.jboss.tools.usage/plugin.xml
===================================================================
--- trunk/usage/plugins/org.jboss.tools.usage/plugin.xml 2010-09-28 12:58:29 UTC (rev
25260)
+++ trunk/usage/plugins/org.jboss.tools.usage/plugin.xml 2010-09-28 13:01:37 UTC (rev
25261)
@@ -4,13 +4,13 @@
<extension
point="org.eclipse.ui.startup">
<startup
- class="org.jboss.tools.usage.reporting.UsageReportDispatcher">
+
class="org.jboss.tools.usage.internal.reporting.UsageReportDispatcher">
</startup>
</extension>
<extension
point="org.eclipse.ui.preferencePages">
<page
-
class="org.jboss.tools.usage.preferences.UsageReportPreferencePage"
+
class="org.jboss.tools.usage.internal.preferences.UsageReportPreferencePage"
id="org.jboss.tools.usage.analytics.preferences.UsageAnalyticsPreferencePage"
name="%page.name"
category="org.jboss.tools.common.model.ui.MainPreferencePage">
@@ -19,7 +19,7 @@
<extension
point="org.eclipse.core.runtime.preferences">
<initializer
-
class="org.jboss.tools.usage.preferences.UsageReportPreferenceInitializer">
+
class="org.jboss.tools.usage.internal.preferences.UsageReportPreferenceInitializer">
</initializer>
</extension>
</plugin>
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/AbstractGoogleAnalyticsParameters.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/AbstractGoogleAnalyticsParameters.java 2010-09-28
12:58:29 UTC (rev 25260)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/AbstractGoogleAnalyticsParameters.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -10,12 +10,11 @@
******************************************************************************/
package org.jboss.tools.usage.googleanalytics;
-import org.jboss.tools.usage.IHumanReadable;
/**
* @author Andre Dietisheim
*/
-public abstract class AbstractGoogleAnalyticsParameters implements
IGoogleAnalyticsParameters, IHumanReadable {
+public abstract class AbstractGoogleAnalyticsParameters implements
IGoogleAnalyticsParameters {
private String accountName;
private String hostName;
@@ -38,6 +37,4 @@
public String getHostname() {
return hostName;
}
-
- public abstract String toHumanReadable();
}
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/IJBossToolsEclipseEnvironment.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/IJBossToolsEclipseEnvironment.java 2010-09-28
12:58:29 UTC (rev 25260)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/IJBossToolsEclipseEnvironment.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,6 +1,8 @@
package org.jboss.tools.usage.googleanalytics;
-public interface IJBossToolsEclipseEnvironment extends IGoogleAnalyticsParameters {
+import org.jboss.tools.usage.IHumanReadable;
+public interface IJBossToolsEclipseEnvironment extends IGoogleAnalyticsParameters,
IHumanReadable {
+
public String getJBossToolsVersion();
}
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/eclipse/AbstractEclipseEnvironment.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/eclipse/AbstractEclipseEnvironment.java 2010-09-28
12:58:29 UTC (rev 25260)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/googleanalytics/eclipse/AbstractEclipseEnvironment.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -18,10 +18,9 @@
import org.eclipse.ui.PlatformUI;
import org.jboss.tools.usage.googleanalytics.AbstractGoogleAnalyticsParameters;
import org.jboss.tools.usage.googleanalytics.IGoogleAnalyticsParameters;
-import org.jboss.tools.usage.googleanalytics.IUserAgent;
import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
-import org.jboss.tools.usage.preferences.IUsageReportPreferenceConstants;
-import org.jboss.tools.usage.preferences.UsageReportPreferencesUtils;
+import org.jboss.tools.usage.internal.preferences.IUsageReportPreferenceConstants;
+import org.jboss.tools.usage.internal.preferences.UsageReportPreferencesUtils;
/**
* @author Andre Dietisheim
@@ -39,7 +38,7 @@
private String lastVisit;
private String currentVisit;
private long visitCount;
- private IUserAgent eclipseUserAgent;
+ protected EclipseUserAgent eclipseUserAgent;
public AbstractEclipseEnvironment(String accountName, String hostName,
IEclipsePreferences preferences) {
this(accountName, hostName, IGoogleAnalyticsParameters.VALUE_NO_REFERRAL,
preferences);
@@ -80,7 +79,7 @@
visitCount = preferences.getLong(IUsageReportPreferenceConstants.VISIT_COUNT, 1);
}
- protected IUserAgent createEclipseUserAgent() {
+ protected EclipseUserAgent createEclipseUserAgent() {
return new EclipseUserAgent();
}
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/JBossToolsUsageActivator.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/JBossToolsUsageActivator.java 2010-09-28
12:58:29 UTC (rev 25260)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/JBossToolsUsageActivator.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -11,6 +11,10 @@
package org.jboss.tools.usage.internal;
import org.eclipse.core.runtime.Plugin;
+import org.jboss.tools.usage.googleanalytics.IJBossToolsEclipseEnvironment;
+import org.jboss.tools.usage.internal.preferences.UsageReportPreferencesUtils;
+import org.jboss.tools.usage.internal.reporting.JBossToolsEclipseEnvironment;
+import org.jboss.tools.usage.internal.reporting.ReportingMessages;
import org.osgi.framework.BundleContext;
/**
@@ -21,6 +25,8 @@
public static final String PLUGIN_ID = "org.jboss.tools.usage"; //$NON-NLS-1$
private static JBossToolsUsageActivator plugin;
+
+ private IJBossToolsEclipseEnvironment eclipseEnvironment;
public JBossToolsUsageActivator() {
plugin = this;
@@ -39,4 +45,33 @@
public void start(BundleContext context) throws Exception {
super.start(context);
}
+
+ public IJBossToolsEclipseEnvironment getJBossToolsEclipseEnvironment() {
+ if (eclipseEnvironment == null) {
+ eclipseEnvironment = createEclipseEnvironment();
+ }
+ return eclipseEnvironment;
+ }
+
+ private IJBossToolsEclipseEnvironment createEclipseEnvironment() {
+ return new JBossToolsEclipseEnvironment(
+ getGoogleAnalyticsAccount(), getGoogleAnalyticsHostname(),
+ UsageReportPreferencesUtils.getPreferences());
+ }
+
+ private String getGoogleAnalyticsAccount() {
+ if (JBDSUtils.isJBDS()) {
+ return ReportingMessages.UsageReport_GoogleAnalytics_Account_JBDS;
+ } else {
+ return ReportingMessages.UsageReport_GoogleAnalytics_Account;
+ }
+ }
+
+ private String getGoogleAnalyticsHostname() {
+ if (JBDSUtils.isJBDS()) {
+ return ReportingMessages.UsageReport_HostName_JBDS;
+ } else {
+ return ReportingMessages.UsageReport_HostName;
+ }
+ }
}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences
(from rev 25055,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences)
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/GlobalUsageSettings.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,106 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.preferences;
-
-import java.util.Map;
-
-import org.eclipse.core.runtime.Plugin;
-import org.jboss.tools.usage.http.HttpRemotePropertiesProvider;
-
-/**
- * A class that implements a global reporting enablement setting. The current
- * implementation queries a given url and extracts the enablement value out of
- * the response.
- *
- * @author Andre Dietisheim
- */
-public class GlobalUsageSettings {
-
- private static final String REMOTEPROPS_URL =
"http://anonsvn.jboss.org/repos/jbosstools/workspace/usage/usage.properties";
//$NON-NLS-1$
-
- /**
- * system property that enables/disables reporting for current eclipse
- * instance
- */
- public static final String USAGE_REPORTING_ENABLED_KEY =
"usage_reporting_enabled"; //$NON-NLS-1$
-
- public static final String REMOTEPROPS_USAGE_REPORTING_ENABLED_KEY =
USAGE_REPORTING_ENABLED_KEY + "="; //$NON-NLS-1$
-
- private static final boolean USAGE_REPORTING_ENABLED_DEFAULT = true;
-
- /** the delimiter that delimits the key/value-pairs */
- private static final char VALUE_DELIMITER = '\n';
-
- private HttpRemotePropertiesProvider remoteMap;
-
- public GlobalUsageSettings(Plugin plugin) {
- remoteMap = createRemoteMap(
- REMOTEPROPS_URL
- , VALUE_DELIMITER
- , plugin
- , REMOTEPROPS_USAGE_REPORTING_ENABLED_KEY);
- }
-
- /**
- * Returns <code>true</code> if usage reporting is turned on.
- *
- * @return true, if is reporting enabled
- */
- public boolean isReportingEnabled() {
- return isInstanceReportingEnabled() && isAllInstancesReportingEnabled();
- }
-
- /**
- * Returns <code>true</code> if reporting is enabled for all instances. The
- * appropriate setting is queried in a remote properties file at {@link
#REMOTEPROPS_URL}. The key is {@link #REMOTEPROPS_ALLINSTANCES_ENABLED_DEFAULT}
- *
- * @return <code>true, if the remote peer is set to enabled
- *
- * @see #REMOTEPROPS_URL
- * @see #REMOTEPROPS_ALLINSTANCES_ENABLED_KEY
- */
- private boolean isAllInstancesReportingEnabled() {
- try {
- Map<String, String> valueMap = remoteMap.getValueMap();
- String isEnabled = valueMap.get(REMOTEPROPS_USAGE_REPORTING_ENABLED_KEY);
- if (isEnabled == null) {
- return USAGE_REPORTING_ENABLED_DEFAULT;
- }
-
- return Boolean.valueOf(isEnabled);
- } catch (Exception e) {
- return USAGE_REPORTING_ENABLED_DEFAULT;
- }
- }
-
- /**
- * Returns <code>true</code> if is reporting is enabled for this eclipse
- * instance.
- *
- * @return true, if this instance shall report usage
- *
- * @see #SYSPROPS_INSTANCE_ENABLED_KEY
- */
- private boolean isInstanceReportingEnabled() {
- return Boolean.valueOf(
- System.getProperty(USAGE_REPORTING_ENABLED_KEY,
- String.valueOf(USAGE_REPORTING_ENABLED_DEFAULT)));
- }
-
- protected HttpRemotePropertiesProvider createRemoteMap(String url, char valueDelimiter,
Plugin plugin,
- String... keys) {
- return new HttpRemotePropertiesProvider(
- url,
- valueDelimiter,
- plugin,
- keys);
- }
-}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java
(from rev 25100,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/GlobalUsageSettings.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/GlobalUsageSettings.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,120 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.preferences;
+
+import java.util.Map;
+
+import org.eclipse.core.runtime.Plugin;
+import org.jboss.tools.usage.http.HttpRemotePropertiesProvider;
+import org.jboss.tools.usage.http.IPropertiesProvider;
+import org.jboss.tools.usage.internal.JBDSUtils;
+
+/**
+ * A class that implements a global reporting enablement setting. The current
+ * implementation queries a given url and extracts the enablement value out of
+ * the response.
+ *
+ * @author Andre Dietisheim
+ */
+public class GlobalUsageSettings {
+
+ /**
+ * system property that enables/disables reporting for current eclipse
+ * instance
+ */
+ public static final String USAGE_REPORTING_ENABLED_KEY =
"usage_reporting_enabled";
+
+ public static final String REMOTEPROPS_USAGE_REPORTING_ENABLED_KEY =
USAGE_REPORTING_ENABLED_KEY + "="; //$NON-NLS-1$
+
+ /** the enablement default for the local instance */
+ private static final boolean INSTANCE_USAGE_REPORTING_ENABLED_DEFAULT = true;
+
+ /** the enablement default for all instances */
+ private static final boolean ALLINSTANCES_USAGE_REPORTING_ENABLED_DEFAULT = false;
+
+ /** the delimiter that delimits the key/value-pairs */
+ private static final char VALUE_DELIMITER = '\n';
+
+ private IPropertiesProvider remoteMap;
+
+ public GlobalUsageSettings(Plugin plugin) {
+ remoteMap = createRemoteMap(
+ getRemotePropsUrl()
+ , VALUE_DELIMITER
+ , plugin
+ , REMOTEPROPS_USAGE_REPORTING_ENABLED_KEY);
+ }
+
+ private String getRemotePropsUrl() {
+ if (JBDSUtils.isJBDS()) {
+ return PreferencesMessages.GlobalUsageSettings_RemoteProps_URL_JBDS;
+ } else {
+ return PreferencesMessages.GlobalUsageSettings_RemoteProps_URL;
+ }
+ }
+
+ /**
+ * Returns <code>true</code> if usage reporting is turned on.
+ *
+ * @return true, if is reporting enabled
+ */
+ public boolean isReportingEnabled() {
+ return isInstanceReportingEnabled() && isAllInstancesReportingEnabled();
+ }
+
+ /**
+ * Returns <code>true</code> if reporting is enabled for all instances. The
+ * appropriate setting is queried in a remote properties file at
+ * {@link #REMOTEPROPS_URL}. The key is
+ * {@link #REMOTEPROPS_ALLINSTANCES_ENABLED_DEFAULT}
+ *
+ * @return <code>true, if the remote peer is set to enabled
+ *
+ * @see #REMOTEPROPS_URL
+ * @see #REMOTEPROPS_ALLINSTANCES_ENABLED_KEY
+ */
+ private boolean isAllInstancesReportingEnabled() {
+ try {
+ Map<String, String> valueMap = remoteMap.getMap();
+ String isEnabled = valueMap.get(REMOTEPROPS_USAGE_REPORTING_ENABLED_KEY);
+ if (isEnabled == null) {
+ return ALLINSTANCES_USAGE_REPORTING_ENABLED_DEFAULT;
+ }
+
+ return Boolean.valueOf(isEnabled);
+ } catch (Exception e) {
+ return ALLINSTANCES_USAGE_REPORTING_ENABLED_DEFAULT;
+ }
+ }
+
+ /**
+ * Returns <code>true</code> if is reporting is enabled for this eclipse
+ * instance.
+ *
+ * @return true, if this instance shall report usage
+ *
+ * @see #SYSPROPS_INSTANCE_ENABLED_KEY
+ */
+ private boolean isInstanceReportingEnabled() {
+ return Boolean.valueOf(
+ System.getProperty(USAGE_REPORTING_ENABLED_KEY,
+ String.valueOf(INSTANCE_USAGE_REPORTING_ENABLED_DEFAULT)));
+ }
+
+ protected IPropertiesProvider createRemoteMap(String url, char valueDelimiter, Plugin
plugin,
+ String... keys) {
+ return new HttpRemotePropertiesProvider(
+ url,
+ valueDelimiter,
+ plugin,
+ keys);
+ }
+}
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/IUsageReportPreferenceConstants.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/IUsageReportPreferenceConstants.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/IUsageReportPreferenceConstants.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -8,7 +8,7 @@
* Contributors:
* Red Hat, Inc. - initial API and implementation
******************************************************************************/
-package org.jboss.tools.usage.preferences;
+package org.jboss.tools.usage.internal.preferences;
/**
* @author Andre Dietisheim
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/PreferencesMessages.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.preferences;
-
-import org.eclipse.osgi.util.NLS;
-
-public class PreferencesMessages extends NLS {
- private static final String BUNDLE_NAME =
"org.jboss.tools.usage.preferences.messages"; //$NON-NLS-1$
-
- public static String UsageReportPreferencePage_Description;
- public static String UsageReportPreferencePage_AllowReporting;
- public static String UsageReportPreferencePage_Error_Saving;
-
- static {
- // initialize resource bundle
- NLS.initializeMessages(BUNDLE_NAME, PreferencesMessages.class);
- }
-
- private PreferencesMessages() {
- }
-}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java
(from rev 25237,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/PreferencesMessages.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/PreferencesMessages.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.preferences;
+
+import org.eclipse.osgi.util.NLS;
+
+public class PreferencesMessages extends NLS {
+ private static final String BUNDLE_NAME =
"org.jboss.tools.usage.internal.preferences.messages"; //$NON-NLS-1$
+
+ public static String UsageReportPreferencePage_Description;
+ public static String UsageReportPreferencePage_AllowReporting;
+ public static String UsageReportPreferencePage_Error_Saving;
+ public static String UsageReportPreferencePage_ReportedValues;
+
+ public static String GlobalUsageSettings_RemoteProps_URL;
+
+ public static String UsageReportPreferencePage_Description_JBDS;
+ public static String UsageReportPreferencePage_AllowReporting_JBDS;
+ public static String UsageReportPreferencePage_Error_Saving_JBDS;
+
+ public static String GlobalUsageSettings_RemoteProps_URL_JBDS;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, PreferencesMessages.class);
+ }
+
+ private PreferencesMessages() {
+ }
+}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/UsageReportPreferenceInitializer.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.jboss.tools.usage.util.PreferencesUtils;
-
-/**
- * @author Andre Dietisheim
- */
-public class UsageReportPreferenceInitializer extends
- AbstractPreferenceInitializer {
-
- public void initializeDefaultPreferences() {
- PreferencesUtils.getStore().setDefault(
- IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID,
- IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_DEFAULTVALUE);
-
- PreferencesUtils.getStore().setDefault(
- IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID,
- IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_DEFAULTVALUE);
- }
-}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java
(from rev 25062,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/UsageReportPreferenceInitializer.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferenceInitializer.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.preferences;
+
+import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class UsageReportPreferenceInitializer extends
+ AbstractPreferenceInitializer {
+
+ public void initializeDefaultPreferences() {
+ UsageReportPreferencesUtils.getStore().setDefault(
+ IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID,
+ IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_DEFAULTVALUE);
+
+ UsageReportPreferencesUtils.getStore().setDefault(
+ IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID,
+ IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_DEFAULTVALUE);
+ }
+}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/UsageReportPreferencePage.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.preferences;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.FieldEditorPreferencePage;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
-import org.jboss.tools.usage.reporting.UsageReportPreferences;
-import org.jboss.tools.usage.util.StatusUtils;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * @author Andre Dietisheim
- */
-public class UsageReportPreferencePage extends FieldEditorPreferencePage implements
IWorkbenchPreferencePage {
-
- public UsageReportPreferencePage() {
- super(GRID);
- }
-
- public void createFieldEditors() {
- addField(new BooleanFieldEditor(
- IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID
- , PreferencesMessages.UsageReportPreferencePage_AllowReporting
- , getFieldEditorParent()));
- }
-
- public void init(IWorkbench workbench) {
- setPreferenceStore(UsageReportPreferences.createPreferenceStore());
- setDescription(PreferencesMessages.UsageReportPreferencePage_Description);
- }
-
- @Override
- public boolean performOk() {
- try {
- UsageReportPreferences.flush();
- } catch (BackingStoreException e) {
- IStatus status = StatusUtils.getErrorStatus(JBossToolsUsageActivator.PLUGIN_ID,
- PreferencesMessages.UsageReportPreferencePage_Error_Saving, e);
- JBossToolsUsageActivator.getDefault().getLog().log(status);
- }
- return super.performOk();
- }
-}
\ No newline at end of file
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java
(from rev 25248,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/UsageReportPreferencePage.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencePage.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,109 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.preferences;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.preference.BooleanFieldEditor;
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.StyledText;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+import org.jboss.tools.usage.googleanalytics.IJBossToolsEclipseEnvironment;
+import org.jboss.tools.usage.internal.JBDSUtils;
+import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
+import org.jboss.tools.usage.util.StatusUtils;
+import org.osgi.service.prefs.BackingStoreException;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class UsageReportPreferencePage extends FieldEditorPreferencePage implements
IWorkbenchPreferencePage {
+
+ public UsageReportPreferencePage() {
+ super(GRID);
+ }
+
+ @Override
+ protected Control createContents(Composite parent) {
+ Control control = super.createContents(parent);
+ appendReportingData((Composite) control);
+ return control;
+ }
+
+ private void appendReportingData(Composite control) {
+ Group group = new Group(control, SWT.NONE);
+ group.setText(PreferencesMessages.UsageReportPreferencePage_ReportedValues);
+ GridDataFactory.fillDefaults().grab(true, false).hint(SWT.FILL, 300).applyTo(group);
+ FillLayout fillLayout = new FillLayout();
+ fillLayout.marginHeight = 4;
+ fillLayout.marginWidth = 8;
+ group.setLayout(fillLayout);
+ StyledText text = new StyledText(group, SWT.BORDER | SWT.V_SCROLL);
+ IJBossToolsEclipseEnvironment eclipseEnvironment =
JBossToolsUsageActivator.getDefault().getJBossToolsEclipseEnvironment();
+ text.setText(eclipseEnvironment.toHumanReadable());
+ text.setEditable(false);
+ }
+
+ public void createFieldEditors() {
+ addField(new BooleanFieldEditor(
+ IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID
+ , getCheckBoxlabel()
+ , getFieldEditorParent()));
+ }
+
+ private String getCheckBoxlabel() {
+ if (JBDSUtils.isJBDS()) {
+ return PreferencesMessages.UsageReportPreferencePage_AllowReporting_JBDS;
+ } else {
+ return PreferencesMessages.UsageReportPreferencePage_AllowReporting;
+ }
+ }
+
+ public void init(IWorkbench workbench) {
+ setPreferenceStore(UsageReportPreferences.createPreferenceStore());
+ setDescription(getPageDescription());
+ }
+
+ private String getPageDescription() {
+ if (JBDSUtils.isJBDS()) {
+ return PreferencesMessages.UsageReportPreferencePage_Description_JBDS;
+ } else {
+ return PreferencesMessages.UsageReportPreferencePage_Description;
+ }
+ }
+
+ @Override
+ public boolean performOk() {
+ try {
+ UsageReportPreferences.flush();
+ } catch (BackingStoreException e) {
+ IStatus status = StatusUtils.getErrorStatus(JBossToolsUsageActivator.PLUGIN_ID,
+ getPrefsSaveErrorMessage(), e);
+ JBossToolsUsageActivator.getDefault().getLog().log(status);
+ }
+ return super.performOk();
+ }
+
+ private String getPrefsSaveErrorMessage() {
+ if (JBDSUtils.isJBDS()) {
+ return PreferencesMessages.UsageReportPreferencePage_Error_Saving_JBDS;
+ } else {
+ return PreferencesMessages.UsageReportPreferencePage_Error_Saving;
+ }
+ }
+
+}
\ No newline at end of file
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferences.java
(from rev 25062,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/UsageReportPreferences.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferences.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferences.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.preferences;
+
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
+import org.jboss.tools.usage.internal.reporting.ReportingMessages;
+import org.jboss.tools.usage.util.StatusUtils;
+import org.osgi.service.prefs.BackingStoreException;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class UsageReportPreferences {
+
+ public static void setEnabled(boolean enabled) {
+ UsageReportPreferencesUtils.getStore().putValue(
+ IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID, String.valueOf(enabled));
+ }
+
+ public static boolean isEnabled() {
+ return UsageReportPreferencesUtils.getPreferences().getBoolean(
+ IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID,
+ IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_DEFAULTVALUE);
+ }
+
+ public static boolean isAskUser() {
+ return UsageReportPreferencesUtils.getPreferences().getBoolean(
+ IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID,
+ IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_DEFAULTVALUE);
+ }
+
+ public static void setAskUser(boolean askUser) {
+ try {
+ IEclipsePreferences preferences = UsageReportPreferencesUtils.getPreferences();
+ preferences.putBoolean(IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID,
askUser);
+ preferences.flush();
+ } catch (BackingStoreException e) {
+ JBossToolsUsageActivator.getDefault().getLog().log(
+ StatusUtils.getErrorStatus(JBossToolsUsageActivator.PLUGIN_ID,
+ ReportingMessages.UsageReport_Error_SavePreferences, e,
+ IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID));
+ }
+ }
+
+ public static void flush() throws BackingStoreException {
+ UsageReportPreferencesUtils.getPreferences().flush();
+ }
+
+ public static IPreferenceStore createPreferenceStore() {
+ return UsageReportPreferencesUtils.getStore();
+ }
+}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencesUtils.java
(from rev 25062,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/UsageReportPreferencesUtils.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencesUtils.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/UsageReportPreferencesUtils.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.preferences;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.core.runtime.preferences.ConfigurationScope;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.jface.preference.IPersistentPreferenceStore;
+import org.eclipse.ui.preferences.ScopedPreferenceStore;
+import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
+import org.jboss.tools.usage.util.StatusUtils;
+import org.osgi.service.prefs.BackingStoreException;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class UsageReportPreferencesUtils {
+
+ private UsageReportPreferencesUtils() {
+ // inhibit instantiation
+ }
+
+ public static IEclipsePreferences getPreferences() {
+ return new ConfigurationScope().getNode(JBossToolsUsageActivator.PLUGIN_ID);
+ }
+
+ public static IPersistentPreferenceStore getStore() {
+ return new ScopedPreferenceStore(new ConfigurationScope(),
JBossToolsUsageActivator.PLUGIN_ID);
+ }
+
+ public static void checkedSavePreferences(IEclipsePreferences preferences, Plugin
plugin, String message) {
+ try {
+ preferences.flush();
+ } catch (BackingStoreException e) {
+ IStatus status = StatusUtils.getErrorStatus(plugin.getBundle().getSymbolicName(),
+ message,
+ e, preferences.absolutePath());
+ plugin.getLog().log(status);
+ }
+
+ }
+}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/messages.properties 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,3 +0,0 @@
-UsageReportPreferencePage_Description=Preference page with options for anonymous usage
data reporting. Usage data is used for statistical matters only.
-UsageReportPreferencePage_AllowReporting=&Please allow the JBoss Tools team to
receive anonymous usage statistics for this Eclipse installation with JBoss tools.
-UsageReportPreferencePage_Error_Saving=Could not save the preferences.
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties
(from rev 25237,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/preferences/messages.properties)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/preferences/messages.properties 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,13 @@
+UsageReportPreferencePage_Description=Preference page with options for anonymous usage
data reporting.\nUsage data is used for statistical matters only.
+UsageReportPreferencePage_AllowReporting=&Please allow the JBoss Tools team to
receive anonymous usage\n statistics for this Eclipse installation with JBoss Tools.
+UsageReportPreferencePage_Error_Saving=Could not save the preferences.
+UsageReportPreferencePage_ReportedValues=Reported Values
+
+GlobalUsageSettings_RemoteProps_URL=http://anonsvn.jboss.org/repos/jbosstools/workspace/usage/usage.properties
+
+# this is a hack to get into the code freeze deadline. this stuff will be removed with a
proper implementatino
+UsageReportPreferencePage_Description_JBDS=Preference page with options for anonymous
usage data reporting.\nUsage data is used for statistical matters only.
+UsageReportPreferencePage_AllowReporting_JBDS=&Please allow Red Hat Inc. to receive
anonymous usage\n statistics for this JBoss Developer Studio installation.
+UsageReportPreferencePage_Error_Saving_JBDS=Could not save the preferences.
+
+GlobalUsageSettings_RemoteProps_URL_JBDS=http://devstudio.jboss.com/usage/usage.properties
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting
(from rev 25055,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting)
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/JBossToolsComponents.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,163 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.reporting;
-
-import java.util.Collection;
-import java.util.Set;
-import java.util.TreeSet;
-
-import org.eclipse.core.runtime.IBundleGroup;
-import org.eclipse.core.runtime.IBundleGroupProvider;
-import org.jboss.tools.usage.util.collectionfilter.CollectionFilterUtils;
-import org.jboss.tools.usage.util.collectionfilter.ICollectionFilter;
-
-/**
- * @author Andre Dietisheim
- */
-public class JBossToolsComponents {
-
- /**
- * The jboss tools features to check and report.
- * <p>
- * ATTENTION: the following features do not start with org.jboss.tools
- * </p>
- * <p>
- * <ul>
- * <li>org.hibernate.eclipse.feature</li>
- * <li>org.jboss.ide.eclipse.freemarker.feature</li>
- * <li>org.drools.eclipse.feature</li>
- * <li>org.jboss.ide.eclipse.as.feature</li>
- * <li>org.mozilla.xulrunner.feature</li>
- * </ul>
- * </p>
- *
- */
- public enum JBossToolsFeatureNames {
- AS("org.jboss.ide.eclipse.as.feature"),
- ARCHIVES("org.jboss.ide.eclipse.archives.feature"),
- BIRT("org.jboss.tools.birt.feature"),
- BPEL("org.jboss.tools.bpel.feature"),
- CDI("org.jboss.tools.cdi.feature"),
- COMMON("org.jboss.tools.common.feature"),
- DELTACLOUD("org.jboss.tools.deltacloud.feature"),
- DROOLS("org.drools.eclipse.feature"),
- ESB("org.jboss.tools.esb.feature"),
- EXAMPLES("org.jboss.tools.project.examples.feature"),
- FLOW("org.jboss.tools.flow.common.feature"),
- FREEMARKER("org.jboss.ide.eclipse.freemarker.feature"),
- GWT("org.jboss.tools.gwt.feature"),
- HIBERNATETOOLS("org.hibernate.eclipse.feature"),
- JBPM("org.jboss.tools.jbpm.common.feature"),
- JMX("org.jboss.tools.jmx.feature"),
- JSF("org.jboss.tools.jsf.feature"),
- MAVEN("org.jboss.tools.maven.feature"),
- MODESHAPE("org.jboss.tools.modeshape.rest.feature"),
- PORTLET("org.jboss.tools.portlet.feature"),
- PROFILER("org.jboss.tools.profiler.feature"),
- RUNTIME("org.jboss.tools.runtime.feature"),
- SEAM("org.jboss.tools.seam.feature"),
- SMOOKS("org.jboss.tools.smooks.feature"),
- STRUTS("org.jboss.tools.struts.feature"),
- TPTP("org.jboss.tools.tptp.feature"),
- USAGE("org.jboss.tools.usage.feature"),
- VPE("org.jboss.tools.vpe.feature"),
- WORKINGSET("org.jboss.tools.workingset.feature"),
- WS("org.jboss.tools.ws.feature"),
- XULRUNNER("org.mozilla.xulrunner.feature");
-
- private String featureName;
-
- JBossToolsFeatureNames(String featureName) {
- this.featureName = featureName;
- }
-
- /**
- * Returns whether the given bundle group has the same name as the this
- * feature name.
- *
- * @param bundleName
- * the bundle name to check whether it's a member of this
- * group of bundles.
- * @return <tt>true</tt>, if the given bundle
- */
- public boolean matches(IBundleGroup bundleGroup) {
- return featureName.equals(bundleGroup.getName());
- }
-
- public String getComponentName() {
- return name();
- }
-
- public String getFeatureName() {
- return featureName;
- }
- }
-
- private JBossToolsComponents() {
- // inhibit instantiation
- }
-
- /**
- * Returns the jboss components that the given bundle group provider
- * provides
- *
- * @param bundles
- * the bundles group providers to check for jboss components
- * @return
- */
- public static Collection<String> getComponentIds(IBundleGroupProvider[]
bundleGroupProviders) {
- Set<String> componentNames = new TreeSet<String>();
- for (IBundleGroupProvider bundleGroupProvider : bundleGroupProviders) {
- CollectionFilterUtils.filter(
- /* not all jboss tools features start with org.jboss.tools. @see
https://jira.jboss.org/browse/JBIDE-7082
- *
- new CompositeCollectionFilter<IBundleGroup>(
- new JBossToolsNameFilter()
- , new JBossToolsFeaturesFilter(componentNames)) */
- new JBossToolsFeaturesFilter(componentNames)
- , bundleGroupProvider.getBundleGroups(), null);
- }
- return componentNames;
- }
-
- /* not all jboss tools features start with org.jboss.tools. @see
https://jira.jboss.org/browse/JBIDE-7082
- *
- private static class JBossToolsNameFilter implements
- ICollectionFilter<IBundleGroup> {
-
- private static final String JBOSS_TOOLS_FEATURES_PREFIX = "org\\.jboss.+";
//$NON-NLS-1$
- Pattern pattern = Pattern.compile(JBOSS_TOOLS_FEATURES_PREFIX);
-
- public boolean matches(IBundleGroup bundleGroup) {
- return pattern.matcher(bundleGroup.getName()).matches();
- }
- }
- */
-
- private static class JBossToolsFeaturesFilter implements
ICollectionFilter<IBundleGroup> {
-
- private Collection<String> componentNames;
-
- private JBossToolsFeaturesFilter(Collection<String> componentNames) {
- this.componentNames = componentNames;
- }
-
- public boolean matches(IBundleGroup bundleGroup) {
- for (JBossToolsFeatureNames featureName : JBossToolsFeatureNames.values()) {
- if (featureName.matches(bundleGroup)) {
- this.componentNames.add(featureName.getComponentName());
- return true;
- }
- }
- return false;
- }
- }
-}
\ No newline at end of file
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java
(from rev 25095,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/JBossToolsComponents.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsComponents.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,163 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.reporting;
+
+import java.util.Collection;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.eclipse.core.runtime.IBundleGroup;
+import org.eclipse.core.runtime.IBundleGroupProvider;
+import org.jboss.tools.usage.util.collectionfilter.CollectionFilterUtils;
+import org.jboss.tools.usage.util.collectionfilter.ICollectionFilter;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class JBossToolsComponents {
+
+ /**
+ * The jboss tools features to check and report.
+ * <p>
+ * ATTENTION: the following features do not start with org.jboss.tools
+ * </p>
+ * <p>
+ * <ul>
+ * <li>org.hibernate.eclipse.feature</li>
+ * <li>org.jboss.ide.eclipse.freemarker.feature</li>
+ * <li>org.drools.eclipse.feature</li>
+ * <li>org.jboss.ide.eclipse.as.feature</li>
+ * <li>org.mozilla.xulrunner.feature</li>
+ * </ul>
+ * </p>
+ *
+ */
+ public enum JBossToolsFeatureIdentifiers {
+ AS("org.jboss.ide.eclipse.as.feature"),
+ ARCHIVES("org.jboss.ide.eclipse.archives.feature"),
+ BIRT("org.jboss.tools.birt.feature"),
+ BPEL("org.jboss.tools.bpel.feature"),
+ CDI("org.jboss.tools.cdi.feature"),
+ COMMON("org.jboss.tools.common.feature"),
+ DELTACLOUD("org.jboss.tools.deltacloud.feature"),
+ DROOLS("org.drools.eclipse.feature"),
+ ESB("org.jboss.tools.esb.feature"),
+ EXAMPLES("org.jboss.tools.project.examples.feature"),
+ FLOW("org.jboss.tools.flow.common.feature"),
+ FREEMARKER("org.jboss.ide.eclipse.freemarker.feature"),
+ GWT("org.jboss.tools.gwt.feature"),
+ HIBERNATETOOLS("org.hibernate.eclipse.feature"),
+ JBPM("org.jboss.tools.jbpm.common.feature"),
+ JMX("org.jboss.tools.jmx.feature"),
+ JSF("org.jboss.tools.jsf.feature"),
+ MAVEN("org.jboss.tools.maven.feature"),
+ MODESHAPE("org.jboss.tools.modeshape.rest.feature"),
+ PORTLET("org.jboss.tools.portlet.feature"),
+ PROFILER("org.jboss.tools.profiler.feature"),
+ RUNTIME("org.jboss.tools.runtime.feature"),
+ SEAM("org.jboss.tools.seam.feature"),
+ SMOOKS("org.jboss.tools.smooks.feature"),
+ STRUTS("org.jboss.tools.struts.feature"),
+ TPTP("org.jboss.tools.tptp.feature"),
+ USAGE("org.jboss.tools.usage.feature"),
+ VPE("org.jboss.tools.vpe.feature"),
+ WORKINGSET("org.jboss.tools.workingset.feature"),
+ WS("org.jboss.tools.ws.feature"),
+ XULRUNNER("org.mozilla.xulrunner.feature");
+
+ private String featureIdentifier;
+
+ JBossToolsFeatureIdentifiers(String featureIdentifier) {
+ this.featureIdentifier = featureIdentifier;
+ }
+
+ /**
+ * Returns whether the given bundle group has the same name as the this
+ * feature name.
+ *
+ * @param bundleName
+ * the bundle name to check whether it's a member of this
+ * group of bundles.
+ * @return <tt>true</tt>, if the given bundle
+ */
+ public boolean matches(IBundleGroup bundleGroup) {
+ return featureIdentifier.equals(bundleGroup.getIdentifier());
+ }
+
+ public String getComponentName() {
+ return name();
+ }
+
+ public String getFeatureName() {
+ return featureIdentifier;
+ }
+ }
+
+ private JBossToolsComponents() {
+ // inhibit instantiation
+ }
+
+ /**
+ * Returns the jboss components that the given bundle group provider
+ * provides
+ *
+ * @param bundles
+ * the bundles group providers to check for jboss components
+ * @return
+ */
+ public static Collection<String> getComponentIds(IBundleGroupProvider[]
bundleGroupProviders) {
+ Set<String> componentNames = new TreeSet<String>();
+ for (IBundleGroupProvider bundleGroupProvider : bundleGroupProviders) {
+ CollectionFilterUtils.filter(
+ /* not all jboss tools features start with org.jboss.tools. @see
https://jira.jboss.org/browse/JBIDE-7082
+ *
+ new CompositeCollectionFilter<IBundleGroup>(
+ new JBossToolsNameFilter()
+ , new JBossToolsFeaturesFilter(componentNames)) */
+ new JBossToolsFeaturesFilter(componentNames)
+ , bundleGroupProvider.getBundleGroups(), null);
+ }
+ return componentNames;
+ }
+
+ /* not all jboss tools features start with org.jboss.tools. @see
https://jira.jboss.org/browse/JBIDE-7082
+ *
+ private static class JBossToolsNameFilter implements
+ ICollectionFilter<IBundleGroup> {
+
+ private static final String JBOSS_TOOLS_FEATURES_PREFIX = "org\\.jboss.+";
//$NON-NLS-1$
+ Pattern pattern = Pattern.compile(JBOSS_TOOLS_FEATURES_PREFIX);
+
+ public boolean matches(IBundleGroup bundleGroup) {
+ return pattern.matcher(bundleGroup.getName()).matches();
+ }
+ }
+ */
+
+ private static class JBossToolsFeaturesFilter implements
ICollectionFilter<IBundleGroup> {
+
+ private Collection<String> componentNames;
+
+ private JBossToolsFeaturesFilter(Collection<String> componentNames) {
+ this.componentNames = componentNames;
+ }
+
+ public boolean matches(IBundleGroup bundleGroup) {
+ for (JBossToolsFeatureIdentifiers featureIdentifier :
JBossToolsFeatureIdentifiers.values()) {
+ if (featureIdentifier.matches(bundleGroup)) {
+ this.componentNames.add(featureIdentifier.getComponentName());
+ return true;
+ }
+ }
+ return false;
+ }
+ }
+}
\ No newline at end of file
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsEclipseEnvironment.java
(from rev 25250,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/JBossToolsEclipseEnvironment.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsEclipseEnvironment.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/JBossToolsEclipseEnvironment.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,129 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.reporting;
+
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Collection;
+import java.util.Date;
+
+import org.eclipse.core.runtime.IBundleGroupProvider;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.jboss.tools.usage.googleanalytics.IJBossToolsEclipseEnvironment;
+import org.jboss.tools.usage.googleanalytics.eclipse.AbstractEclipseEnvironment;
+import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
+import org.jboss.tools.usage.util.StringUtils;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class JBossToolsEclipseEnvironment extends AbstractEclipseEnvironment implements
IJBossToolsEclipseEnvironment {
+
+ private static final char JBOSS_COMPONENTS_DELIMITER = '-';
+
+ private static final DateFormat DATE_FORMAT =
SimpleDateFormat.getDateTimeInstance(DateFormat.MEDIUM,
+ DateFormat.SHORT);
+
+ public JBossToolsEclipseEnvironment(String accountName, String hostName,
IEclipsePreferences preferences) {
+ super(accountName, hostName, preferences);
+ }
+
+ @Override
+ public String getKeyword() {
+ Collection<String> jbossComponentNames =
JBossToolsComponents.getComponentIds(getBundleGroupProviders());
+ return bundleGroupsToKeywordString(jbossComponentNames);
+ }
+
+ protected IBundleGroupProvider[] getBundleGroupProviders() {
+ return Platform.getBundleGroupProviders();
+ }
+
+ private String bundleGroupsToKeywordString(Collection<String> jbossComponentNames)
{
+ char delimiter = JBOSS_COMPONENTS_DELIMITER;
+ StringBuilder builder = new StringBuilder();
+ for (String componentName : jbossComponentNames) {
+ builder.append(componentName)
+ .append(delimiter);
+ }
+ return builder.toString();
+ }
+
+ public String getJBossToolsVersion() {
+ return JBossToolsUsageActivator.getDefault().getBundle().getVersion().toString();
+ }
+
+ @Override
+ public String toHumanReadable() {
+ StringBuilder builder = new StringBuilder();
+
+ builder.append("JBoss Tools Version: ")
+ .append(getJBossToolsVersion())
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("JBoss Tools Components: ")
+ .append(getKeyword())
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Number of Visits: ")
+ .append(getVisitCount())
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("First Visit: ")
+ .append(getFormattedDate(getFirstVisit()))
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Last Visit: ")
+ .append(getFormattedDate(getLastVisit()))
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Current Visit: ")
+ .append(getFormattedDate(getCurrentVisit()))
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Language: ")
+ .append(getFormattedDate(getBrowserLanguage()))
+ .append(StringUtils.getLineSeparator());
+
+ builder.append(eclipseUserAgent.toHumanReadable());
+
+ builder.append("Screen Colors: ")
+ .append(getFormattedDate(getScreenColorDepth()))
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Screen Resolution: ")
+ .append(getFormattedDate(getScreenResolution()))
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Google Analytics Account: ")
+ .append(getAccountName())
+ .append(StringUtils.getLineSeparator());
+
+ builder.append("Reporting Host: ")
+ .append(getHostname())
+ .append(StringUtils.getLineSeparator());
+
+ return builder.toString();
+ }
+
+ private String getFormattedDate(String dateString) {
+ Date date;
+ try {
+ date = DATE_FORMAT.parse(dateString);
+ if (date != null) {
+ return DATE_FORMAT.format(date);
+ }
+ } catch (ParseException e) {
+ }
+ return "";
+ }
+}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingEclipseEnvironment.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/ReportingEclipseEnvironment.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingEclipseEnvironment.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.reporting;
-
-import java.util.Collection;
-
-import org.eclipse.core.runtime.IBundleGroupProvider;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.jboss.tools.usage.googleanalytics.eclipse.AbstractEclipseEnvironment;
-import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
-
-/**
- * @author Andre Dietisheim
- */
-public class ReportingEclipseEnvironment extends AbstractEclipseEnvironment {
-
- private static final char JBOSS_COMPONENTS_DELIMITER = '-';
-
- public ReportingEclipseEnvironment(String accountName, String hostName,
IEclipsePreferences preferences) {
- super(accountName, hostName, preferences);
- }
-
- @Override
- public String getKeyword() {
- Collection<String> jbossComponentNames =
JBossToolsComponents.getComponentIds(getBundleGroupProviders());
- return bundleGroupsToKeywordString(jbossComponentNames );
- }
-
- protected IBundleGroupProvider[] getBundleGroupProviders() {
- return Platform.getBundleGroupProviders();
- }
-
- private String bundleGroupsToKeywordString(Collection<String> jbossComponentNames)
{
- char delimiter = JBOSS_COMPONENTS_DELIMITER;
- StringBuilder builder = new StringBuilder();
- for (String componentName : jbossComponentNames) {
- builder.append(componentName)
- .append(delimiter);
- }
- return builder.toString();
- }
-
- public String getAdContent() {
- return getBundleVersion();
- }
-
- private String getBundleVersion() {
- return JBossToolsUsageActivator.getDefault().getBundle().getVersion().toString();
- }
-}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/ReportingMessages.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.reporting;
-
-import org.eclipse.osgi.util.NLS;
-
-public class ReportingMessages extends NLS {
- private static final String BUNDLE_NAME =
"org.jboss.tools.usage.reporting.messages"; //$NON-NLS-1$
-
- public static String UsageReport_Reporting_Usage;
- public static String UsageReport_Querying_Enablement;
- public static String UsageReport_Asking_User;
- public static String UsageReport_Checkbox_Text;
- public static String UsageReport_DialogMessage;
- public static String UsageReport_DialogTitle;
-
- public static String UsageReport_Error_SavePreferences;
- public static String UsageReport_GoogleAnalyticsAccount;
- public static String UsageReport_HostName;
-
- static {
- // initialize resource bundle
- NLS.initializeMessages(BUNDLE_NAME, ReportingMessages.class);
- }
-
- private ReportingMessages() {
- }
-}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java
(from rev 25155,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/ReportingMessages.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/ReportingMessages.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,44 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.reporting;
+
+import org.eclipse.osgi.util.NLS;
+
+public class ReportingMessages extends NLS {
+ private static final String BUNDLE_NAME =
"org.jboss.tools.usage.internal.reporting.messages"; //$NON-NLS-1$
+
+ public static String UsageReport_Reporting_Usage;
+ public static String UsageReport_Querying_Enablement;
+ public static String UsageReport_Asking_User;
+ public static String UsageReport_DialogTitle;
+ public static String UsageReport_Error_SavePreferences;
+
+ public static String UsageReport_Checkbox_Text;
+ public static String UsageReport_DialogMessage;
+ public static String UsageReport_GoogleAnalytics_Account;
+ public static String UsageReport_HostName;
+ public static String UsageReport_ExplanationPage;
+
+ public static String UsageReport_DialogTitle_JBDS;
+ public static String UsageReport_DialogMessage_JBDS;
+ public static String UsageReport_GoogleAnalytics_Account_JBDS;
+ public static String UsageReport_Checkbox_Text_JBDS;
+ public static String UsageReport_HostName_JBDS;
+ public static String UsageReport_ExplanationPage_JBDS;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, ReportingMessages.class);
+ }
+
+ private ReportingMessages() {
+ }
+}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/UsageReport.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.reporting;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.IJobChangeListener;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.progress.UIJob;
-import org.jboss.tools.usage.FocusPoint;
-import org.jboss.tools.usage.ILoggingAdapter;
-import org.jboss.tools.usage.ITracker;
-import org.jboss.tools.usage.IURLBuildingStrategy;
-import org.jboss.tools.usage.JBossToolsFocusPoint;
-import org.jboss.tools.usage.PluginLogger;
-import org.jboss.tools.usage.Tracker;
-import org.jboss.tools.usage.googleanalytics.GoogleAnalyticsUrlStrategy;
-import org.jboss.tools.usage.googleanalytics.IGoogleAnalyticsParameters;
-import org.jboss.tools.usage.http.HttpGetRequest;
-import org.jboss.tools.usage.http.IHttpGetRequest;
-import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
-import org.jboss.tools.usage.preferences.GlobalUsageSettings;
-import org.jboss.tools.usage.util.PreferencesUtils;
-import org.jboss.tools.usage.util.StatusUtils;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * @author Andre Dietisheim
- */
-public class UsageReport {
-
- private static final String GANALYTICS_ACCOUNTNAME =
ReportingMessages.UsageReport_GoogleAnalyticsAccount;
-
- private static final String HOST_NAME = ReportingMessages.UsageReport_HostName;
-
- private FocusPoint focusPoint = new JBossToolsFocusPoint("tools")
//$NON-NLS-1$
- .setChild(new FocusPoint("usage") //$NON-NLS-1$
- .setChild(new FocusPoint("action") //$NON-NLS-1$
- .setChild(new FocusPoint("wsstartup")))); //$NON-NLS-1$
-
- private GlobalUsageSettings globalSettings = new
GlobalUsageSettings(JBossToolsUsageActivator
- .getDefault());
-
- public void report() {
- new ReportingJob().schedule();
- }
-
- private void askUser() {
- UsageReportEnablementDialog dialog = new UsageReportEnablementDialog(
- true,
- PlatformUI.getWorkbench().getActiveWorkbenchWindow());
- if (dialog.open() == Window.OK) {
- UsageReportPreferences.setEnabled(dialog.isReportEnabled());
- UsageReportPreferences.setAskUser(false);
- flushPreferences();
- }
- }
-
- private void flushPreferences() {
- try {
- UsageReportPreferences.flush();
- } catch (BackingStoreException e) {
- IStatus status = StatusUtils.getErrorStatus(JBossToolsUsageActivator.PLUGIN_ID,
- ReportingMessages.UsageReport_Error_SavePreferences, e);
- JBossToolsUsageActivator.getDefault().getLog().log(status);
- }
- }
-
- private void doReport() {
- if (UsageReportPreferences.isEnabled()) {
- getTracker().trackAsynchronously(focusPoint);
- }
- }
-
- private ITracker getTracker() {
- IGoogleAnalyticsParameters eclipseEnvironment = new ReportingEclipseEnvironment(
- GANALYTICS_ACCOUNTNAME
- , HOST_NAME
- , PreferencesUtils.getPreferences());
- ILoggingAdapter loggingAdapter = new
PluginLogger(JBossToolsUsageActivator.getDefault());
- IURLBuildingStrategy urlStrategy = new GoogleAnalyticsUrlStrategy(eclipseEnvironment);
- IHttpGetRequest httpGetRequest = new HttpGetRequest(eclipseEnvironment.getUserAgent(),
loggingAdapter);
- return new Tracker(urlStrategy, httpGetRequest, loggingAdapter);
- }
-
- private class ReportingJob extends Job {
- private ReportingJob() {
- super(ReportingMessages.UsageReport_Reporting_Usage);
- }
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- if (monitor.isCanceled()) {
- return Status.CANCEL_STATUS;
- }
- monitor.beginTask(ReportingMessages.UsageReport_Querying_Enablement, 2);
- if (globalSettings.isReportingEnabled()) {
- if (monitor.isCanceled()) {
- return Status.CANCEL_STATUS;
- }
- monitor.worked(1);
- if (UsageReportPreferences.isAskUser()) {
- if (monitor.isCanceled()) {
- return Status.CANCEL_STATUS;
- }
- askUserAndReport();
- } else {
- if (monitor.isCanceled()) {
- return Status.CANCEL_STATUS;
- }
- doReport();
- }
- monitor.worked(2);
- monitor.done();
- }
- return Status.OK_STATUS;
- }
-
- private void askUserAndReport() {
- Job askUserJob = new AskUserJob();
- askUserJob.addJobChangeListener(new IJobChangeListener() {
-
- public void sleeping(IJobChangeEvent event) {
- // ignore
- }
-
- public void scheduled(IJobChangeEvent event) {
- // ignore
- }
-
- public void running(IJobChangeEvent event) {
- // ignore
- }
-
- public void done(IJobChangeEvent event) {
- doReport();
- }
-
- public void awake(IJobChangeEvent event) {
- // ignore
- }
-
- public void aboutToRun(IJobChangeEvent event) {
- // ignore
- }
- });
- askUserJob.setUser(true);
- askUserJob.setPriority(Job.SHORT);
- askUserJob.schedule();
- }
- }
-
- private class AskUserJob extends UIJob {
- private AskUserJob() {
- super(ReportingMessages.UsageReport_Asking_User);
- }
-
- @Override
- public IStatus runInUIThread(IProgressMonitor monitor) {
- askUser();
- return Status.OK_STATUS;
- }
- }
-}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java
(from rev 25250,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/UsageReport.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReport.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,176 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.reporting;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.IJobChangeEvent;
+import org.eclipse.core.runtime.jobs.IJobChangeListener;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.window.Window;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.progress.UIJob;
+import org.jboss.tools.usage.googleanalytics.GoogleAnalyticsUrlStrategy;
+import org.jboss.tools.usage.googleanalytics.IJBossToolsEclipseEnvironment;
+import org.jboss.tools.usage.http.HttpGetRequest;
+import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
+import org.jboss.tools.usage.internal.preferences.GlobalUsageSettings;
+import org.jboss.tools.usage.internal.preferences.UsageReportPreferences;
+import org.jboss.tools.usage.tracker.IFocusPoint;
+import org.jboss.tools.usage.tracker.ILoggingAdapter;
+import org.jboss.tools.usage.tracker.ITracker;
+import org.jboss.tools.usage.tracker.IURLBuildingStrategy;
+import org.jboss.tools.usage.tracker.internal.FocusPoint;
+import org.jboss.tools.usage.tracker.internal.PluginLogger;
+import org.jboss.tools.usage.tracker.internal.SuffixFocusPoint;
+import org.jboss.tools.usage.tracker.internal.Tracker;
+import org.jboss.tools.usage.util.StatusUtils;
+import org.osgi.service.prefs.BackingStoreException;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class UsageReport {
+
+ private IFocusPoint focusPoint;
+
+ private GlobalUsageSettings globalSettings;
+
+ private IJBossToolsEclipseEnvironment eclipseEnvironment;
+
+ public UsageReport() {
+ eclipseEnvironment =
JBossToolsUsageActivator.getDefault().getJBossToolsEclipseEnvironment();
+ focusPoint = new SuffixFocusPoint("tools",
eclipseEnvironment.getJBossToolsVersion()) //$NON-NLS-1$
+ .setChild(new FocusPoint("usage") //$NON-NLS-1$
+ .setChild(new FocusPoint("action") //$NON-NLS-1$
+ .setChild(new FocusPoint("wsstartup")))); //$NON-NLS-1$
+
+ globalSettings = new GlobalUsageSettings(JBossToolsUsageActivator
+ .getDefault());
+ }
+
+ public void report() {
+ new ReportingJob().schedule();
+ }
+
+ private void askUser() {
+ UsageReportEnablementDialog dialog = new UsageReportEnablementDialog(
+ true,
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow());
+ if (dialog.open() == Window.OK) {
+ UsageReportPreferences.setEnabled(dialog.isReportEnabled());
+ UsageReportPreferences.setAskUser(false);
+ flushPreferences();
+ }
+ }
+
+ private void flushPreferences() {
+ try {
+ UsageReportPreferences.flush();
+ } catch (BackingStoreException e) {
+ IStatus status = StatusUtils.getErrorStatus(JBossToolsUsageActivator.PLUGIN_ID,
+ ReportingMessages.UsageReport_Error_SavePreferences, e);
+ JBossToolsUsageActivator.getDefault().getLog().log(status);
+ }
+ }
+
+ private void doReport() {
+ if (UsageReportPreferences.isEnabled()) {
+ IURLBuildingStrategy urlBuildingStrategy = new
GoogleAnalyticsUrlStrategy(eclipseEnvironment);
+ ILoggingAdapter loggingAdapter = new
PluginLogger(JBossToolsUsageActivator.getDefault());
+ ITracker tracker = new Tracker(
+ urlBuildingStrategy
+ , new HttpGetRequest(eclipseEnvironment.getUserAgent(), loggingAdapter)
+ , loggingAdapter);
+ tracker.trackAsynchronously(focusPoint);
+ }
+ }
+
+ private class ReportingJob extends Job {
+ private ReportingJob() {
+ super(ReportingMessages.UsageReport_Reporting_Usage);
+ }
+
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ if (monitor.isCanceled()) {
+ return Status.CANCEL_STATUS;
+ }
+ monitor.beginTask(ReportingMessages.UsageReport_Querying_Enablement, 2);
+ if (globalSettings.isReportingEnabled()) {
+ if (monitor.isCanceled()) {
+ return Status.CANCEL_STATUS;
+ }
+ monitor.worked(1);
+ if (UsageReportPreferences.isAskUser()) {
+ if (monitor.isCanceled()) {
+ return Status.CANCEL_STATUS;
+ }
+ askUserAndReport();
+ } else {
+ if (monitor.isCanceled()) {
+ return Status.CANCEL_STATUS;
+ }
+ doReport();
+ }
+ monitor.worked(2);
+ monitor.done();
+ }
+ return Status.OK_STATUS;
+ }
+
+ private void askUserAndReport() {
+ Job askUserJob = new AskUserJob();
+ askUserJob.addJobChangeListener(new IJobChangeListener() {
+
+ public void sleeping(IJobChangeEvent event) {
+ // ignore
+ }
+
+ public void scheduled(IJobChangeEvent event) {
+ // ignore
+ }
+
+ public void running(IJobChangeEvent event) {
+ // ignore
+ }
+
+ public void done(IJobChangeEvent event) {
+ doReport();
+ }
+
+ public void awake(IJobChangeEvent event) {
+ // ignore
+ }
+
+ public void aboutToRun(IJobChangeEvent event) {
+ // ignore
+ }
+ });
+ askUserJob.setUser(true);
+ askUserJob.setPriority(Job.SHORT);
+ askUserJob.schedule();
+ }
+ }
+
+ private class AskUserJob extends UIJob {
+ private AskUserJob() {
+ super(ReportingMessages.UsageReport_Asking_User);
+ }
+
+ @Override
+ public IStatus runInUIThread(IProgressMonitor monitor) {
+ askUser();
+ return Status.OK_STATUS;
+ }
+ }
+}
Modified:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportDispatcher.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/UsageReportDispatcher.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportDispatcher.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -8,7 +8,7 @@
* Contributors:
* Red Hat, Inc. - initial API and implementation
******************************************************************************/
-package org.jboss.tools.usage.reporting;
+package org.jboss.tools.usage.internal.reporting;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.IStartup;
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/UsageReportEnablementDialog.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.reporting;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.layout.GridDataFactory;
-import org.eclipse.jface.window.IShellProvider;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Link;
-import org.eclipse.swt.widgets.Shell;
-import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
-import org.jboss.tools.usage.util.BrowserUtil;
-
-/**
- * @author Andre Dietisheim
- */
-public class UsageReportEnablementDialog extends Dialog {
-
- protected static final String USAGE_URL = "http://jboss.org/tools/usage"; //
$NON
- private Button checkBox;
- private boolean reportEnabled;
-
- public UsageReportEnablementDialog(boolean reportEnabled, IShellProvider parentShell) {
- super(parentShell);
- this.reportEnabled = reportEnabled;
- }
-
- protected void buttonPressed(int buttonId) {
- if (buttonId == IDialogConstants.OK_ID) {
- this.reportEnabled = checkBox.getSelection();
- } else if (buttonId == IDialogConstants.CANCEL_ID) {
- this.reportEnabled = false;
- }
- super.buttonPressed(buttonId);
- }
-
- protected void configureShell(Shell shell) {
- super.configureShell(shell);
- shell.setText(ReportingMessages.UsageReport_DialogTitle);
- }
-
- protected void createButtonsForButtonBar(Composite parent) {
- createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
- createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL,
false);
- checkBox.setFocus();
- checkBox.setSelection(reportEnabled);
- }
-
- protected Control createDialogArea(Composite parent) {
- Composite composite = (Composite) super.createDialogArea(parent);
-
- // message
- Link link = new Link(composite, SWT.WRAP);
- link.setFont(parent.getFont());
- link.setText(ReportingMessages.UsageReport_DialogMessage);
- link.addSelectionListener(new SelectionAdapter() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- BrowserUtil.checkedCreateExternalBrowser(USAGE_URL,
JBossToolsUsageActivator.PLUGIN_ID, JBossToolsUsageActivator.getDefault().getLog());
- }
- });
- GridDataFactory.fillDefaults()
- .align(SWT.FILL, SWT.CENTER)
- .grab(true, false)
- .hint(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH, SWT.DEFAULT)
- .applyTo(link);
-
- // checkbox
- checkBox = new Button(composite, SWT.CHECK);
- checkBox.setText(ReportingMessages.UsageReport_Checkbox_Text);
- GridDataFactory.fillDefaults().grab(true, false).align(SWT.LEFT,
SWT.CENTER).applyTo(checkBox);
-
- applyDialogFont(composite);
-
- return composite;
- }
-
- public boolean isReportEnabled() {
- return reportEnabled;
- }
-}
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java
(from rev 25155,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/UsageReportEnablementDialog.java)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportEnablementDialog.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,132 @@
+/*******************************************************************************
+ * Copyright (c) 2010 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.internal.reporting;
+
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.window.IShellProvider;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Link;
+import org.eclipse.swt.widgets.Shell;
+import org.jboss.tools.usage.internal.JBDSUtils;
+import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
+import org.jboss.tools.usage.util.BrowserUtil;
+
+/**
+ * @author Andre Dietisheim
+ */
+public class UsageReportEnablementDialog extends Dialog {
+
+ private Button checkBox;
+ private boolean reportEnabled;
+
+ public UsageReportEnablementDialog(boolean reportEnabled, IShellProvider parentShell) {
+ super(parentShell);
+ this.reportEnabled = reportEnabled;
+ }
+
+ protected void buttonPressed(int buttonId) {
+ if (buttonId == IDialogConstants.OK_ID) {
+ this.reportEnabled = checkBox.getSelection();
+ } else if (buttonId == IDialogConstants.CANCEL_ID) {
+ this.reportEnabled = false;
+ }
+ super.buttonPressed(buttonId);
+ }
+
+ protected void configureShell(Shell shell) {
+ super.configureShell(shell);
+ shell.setText(getDialogTitle());
+ }
+
+ private String getDialogTitle() {
+ if (JBDSUtils.isJBDS()) {
+ return ReportingMessages.UsageReport_DialogTitle_JBDS;
+ } else {
+ return ReportingMessages.UsageReport_DialogTitle;
+ }
+ }
+
+ protected void createButtonsForButtonBar(Composite parent) {
+ createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
+ createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL,
false);
+ checkBox.setFocus();
+ checkBox.setSelection(reportEnabled);
+ }
+
+ protected Control createDialogArea(Composite parent) {
+ Composite composite = (Composite) super.createDialogArea(parent);
+
+ // message
+ Link link = new Link(composite, SWT.WRAP);
+ link.setFont(parent.getFont());
+ link.setText(
+ getLinkText());
+ link.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ BrowserUtil.checkedCreateExternalBrowser(
+ getExplanationUrl(),
+ JBossToolsUsageActivator.PLUGIN_ID,
+ JBossToolsUsageActivator.getDefault().getLog());
+ }
+ });
+ GridDataFactory.fillDefaults()
+ .align(SWT.FILL, SWT.CENTER)
+ .grab(true, false)
+ .hint(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH, SWT.DEFAULT)
+ .applyTo(link);
+
+ // checkbox
+ checkBox = new Button(composite, SWT.CHECK);
+ checkBox.setText(getCheckBoxText());
+ GridDataFactory.fillDefaults().grab(true, false).align(SWT.LEFT,
SWT.CENTER).applyTo(checkBox);
+
+ applyDialogFont(composite);
+
+ return composite;
+ }
+
+ public boolean isReportEnabled() {
+ return reportEnabled;
+ }
+
+ private String getCheckBoxText() {
+ if (JBDSUtils.isJBDS()) {
+ return ReportingMessages.UsageReport_Checkbox_Text_JBDS;
+ } else {
+ return ReportingMessages.UsageReport_Checkbox_Text;
+ }
+ }
+
+ private String getLinkText() {
+ if (JBDSUtils.isJBDS()) {
+ return ReportingMessages.UsageReport_DialogMessage_JBDS;
+ } else {
+ return ReportingMessages.UsageReport_DialogMessage;
+ }
+ }
+
+ private String getExplanationUrl() {
+ if (JBDSUtils.isJBDS()) {
+ return ReportingMessages.UsageReport_ExplanationPage_JBDS;
+ } else {
+ return ReportingMessages.UsageReport_ExplanationPage;
+ }
+ }
+
+}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportPreferences.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/UsageReportPreferences.java 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/UsageReportPreferences.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.reporting;
-
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.jboss.tools.usage.internal.JBossToolsUsageActivator;
-import org.jboss.tools.usage.preferences.IUsageReportPreferenceConstants;
-import org.jboss.tools.usage.util.PreferencesUtils;
-import org.jboss.tools.usage.util.StatusUtils;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * @author Andre Dietisheim
- */
-public class UsageReportPreferences {
-
- public static void setEnabled(boolean enabled) {
- PreferencesUtils.getStore().putValue(
- IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID, String.valueOf(enabled));
- }
-
- public static boolean isEnabled() {
- return PreferencesUtils.getPreferences().getBoolean(
- IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_ID,
- IUsageReportPreferenceConstants.USAGEREPORT_ENABLED_DEFAULTVALUE);
- }
-
- public static boolean isAskUser() {
- return PreferencesUtils.getPreferences().getBoolean(
- IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID,
- IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_DEFAULTVALUE);
- }
-
- public static void setAskUser(boolean askUser) {
- try {
- IEclipsePreferences preferences = PreferencesUtils.getPreferences();
- preferences.putBoolean(IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID,
askUser);
- preferences.flush();
- } catch (BackingStoreException e) {
- JBossToolsUsageActivator.getDefault().getLog().log(
- StatusUtils.getErrorStatus(JBossToolsUsageActivator.PLUGIN_ID,
- ReportingMessages.UsageReport_Error_SavePreferences, e,
- IUsageReportPreferenceConstants.ASK_USER_USAGEREPORT_ID));
- }
- }
-
- public static void flush() throws BackingStoreException {
- PreferencesUtils.getPreferences().flush();
- }
-
- public static IPreferenceStore createPreferenceStore() {
- return PreferencesUtils.getStore();
- }
-}
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/messages.properties 2010-09-21
14:32:44 UTC (rev 25055)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,9 +0,0 @@
-UsageReport_Reporting_Usage=Reporting JBoss Tools usage
-UsageReport_Querying_Enablement=Querying whether reporting is globally enabled
-UsageReport_Asking_User=Asking User to allow reporting
-UsageReport_Checkbox_Text=Report usage of JBoss Tools to JBoss Tools team.
-UsageReport_DialogMessage=Please allow the JBoss Tools team to receive anonymous usage
statistics for this Eclipse installation with JBoss tools (<a>info</a>).
-UsageReport_DialogTitle=JBoss Tools Usage
-UsageReport_Error_SavePreferences=Could not save preferences {0}
-UsageReport_GoogleAnalyticsAccount=UA-17645367-1
-UsageReport_HostName=jboss.org
Copied:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties
(from rev 25248,
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/reporting/messages.properties)
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties
(rev 0)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/internal/reporting/messages.properties 2010-09-28
13:01:37 UTC (rev 25261)
@@ -0,0 +1,20 @@
+UsageReport_Reporting_Usage=Reporting JBoss Developer Studio usage
+UsageReport_Querying_Enablement=Querying whether reporting is globally enabled
+UsageReport_Asking_User=Asking User to allow reporting
+UsageReport_DialogTitle=JBoss Tools Usage
+UsageReport_Error_SavePreferences=Could not save preferences {0}
+
+UsageReport_DialogMessage=Please allow JBoss Tools team to receive anonymous usage
statistics for this Eclipse instance with JBoss Tools (<a>info</a>).
+UsageReport_Checkbox_Text=Report usage of JBoss Tools to JBoss Tools team.
+UsageReport_GoogleAnalytics_Account=UA-17645367-1
+UsageReport_HostName=jboss.org
+UsageReport_ExplanationPage=http://jboss.org/tools/usage
+
+# this is a hack to get into the code freeze deadline. this stuff will be removed with a
proper implementation
+UsageReport_DialogTitle_JBDS=JBoss Developer Studio Usage
+UsageReport_DialogMessage_JBDS=Please allow Red Hat Inc. to receive anonymous usage
statistics for this JBoss Developer Studio installation (<a>info</a>).
+UsageReport_GoogleAnalytics_Account_JBDS=UA-18653195-1
+UsageReport_Checkbox_Text_JBDS=Report usage of JBoss Developer Studio to Red Hat Inc.
+UsageReport_HostName_JBDS=devstudio.jboss.com
+UsageReport_ExplanationPage_JBDS=http://devstudio.jboss.com/usage
+
Deleted:
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/util/DateUtils.java
===================================================================
---
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/util/DateUtils.java 2010-09-28
12:58:29 UTC (rev 25260)
+++
trunk/usage/plugins/org.jboss.tools.usage/src/org/jboss/tools/usage/util/DateUtils.java 2010-09-28
13:01:37 UTC (rev 25261)
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 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.util;
-
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.util.Date;
-
-
-public class DateUtils {
-
- private DateUtils() {
- }
-
- private static final DateFormat DATE_FORMAT = DateFormat.getDateTimeInstance();
-
- public static Date checkedParseDateString(String date) {
- try {
- return DATE_FORMAT.parse(date);
- } catch (ParseException e) {
- return null;
- }
- }
-
-}