Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bundles/org.eclipse.team.ui/plugin.properties4
-rw-r--r--bundles/org.eclipse.team.ui/plugin.xml15
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/Policy.java23
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIPlugin.java21
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/SynchronizeModelUpdateHandler.java19
5 files changed, 52 insertions, 30 deletions
diff --git a/bundles/org.eclipse.team.ui/plugin.properties b/bundles/org.eclipse.team.ui/plugin.properties
index ca2303c73..916b2510c 100644
--- a/bundles/org.eclipse.team.ui/plugin.properties
+++ b/bundles/org.eclipse.team.ui/plugin.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2000, 2012 IBM Corporation and others.
+# Copyright (c) 2000, 2014 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
@@ -87,3 +87,5 @@ PatchNavigatorContent=Patch
PatchSyncParticipant=Patch
PatchSyncWizard=Synchronize with Patch
PatchSyncWizard_description=Synchronize resources with patch contents.
+
+TraceComponentLabel=Platform Team UI
diff --git a/bundles/org.eclipse.team.ui/plugin.xml b/bundles/org.eclipse.team.ui/plugin.xml
index eac01bc6f..c281c51cf 100644
--- a/bundles/org.eclipse.team.ui/plugin.xml
+++ b/bundles/org.eclipse.team.ui/plugin.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
- Copyright (c) 2001, 2012 IBM Corporation and others.
+ Copyright (c) 2001, 2014 IBM Corporation and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
@@ -718,5 +718,16 @@
icon="icons/full/obj/hunk_obj.gif"
modelProviderId="org.eclipse.team.ui.patchModelProvider">
</teamContentProvider>
- </extension>
+ </extension>
+ <extension
+ point="org.eclipse.ui.trace.traceComponents">
+ <component
+ id="org.eclipse.team.ui.trace"
+ label="%TraceComponentLabel">
+ <bundle
+ consumed="false"
+ name="org.eclipse.team.ui">
+ </bundle>
+ </component>
+ </extension>
</plugin>
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/Policy.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/Policy.java
index 4094518f8..54ee5e66f 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/Policy.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/Policy.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
+ * Copyright (c) 2000, 2014 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -13,7 +13,8 @@ package org.eclipse.team.internal.ui;
import java.util.ResourceBundle;
import org.eclipse.core.runtime.*;
-
+import org.eclipse.osgi.service.debug.DebugOptions;
+import org.eclipse.osgi.service.debug.DebugOptionsListener;
/**
* Policy implements NLS convenience methods for the plugin and
@@ -38,16 +39,16 @@ public class Policy {
return tmpBundle;
return actionBundle = ResourceBundle.getBundle(ACTION_BUNDLE);
}
-
- static {
- //init debug options
- if (TeamUIPlugin.getPlugin().isDebugging()) {
- DEBUG_SYNC_MODELS = "true".equalsIgnoreCase(Platform.getDebugOption(TeamUIPlugin.ID + "/syncmodels"));//$NON-NLS-1$ //$NON-NLS-2$
- DEBUG_HISTORY = "true".equalsIgnoreCase(Platform.getDebugOption(TeamUIPlugin.ID + "/history"));//$NON-NLS-1$ //$NON-NLS-2$
- DEBUG_DND = "true".equalsIgnoreCase(Platform.getDebugOption(TeamUIPlugin.ID + "/dnd"));//$NON-NLS-1$ //$NON-NLS-2$
+
+ static final DebugOptionsListener DEBUG_OPTIONS_LISTENER = new DebugOptionsListener() {
+ public void optionsChanged(DebugOptions options) {
+ boolean DEBUG = options.getBooleanOption(TeamUIPlugin.ID + "/debug", false); //$NON-NLS-1$
+ DEBUG_SYNC_MODELS = DEBUG && options.getBooleanOption(TeamUIPlugin.ID + "/syncmodels", false); //$NON-NLS-1$
+ DEBUG_HISTORY = DEBUG && options.getBooleanOption(TeamUIPlugin.ID + "/history", false); //$NON-NLS-1$
+ DEBUG_DND = DEBUG && options.getBooleanOption(TeamUIPlugin.ID + "/dnd", false); //$NON-NLS-1$
}
- }
-
+ };
+
/**
* Checks if the progress monitor is canceled.
*
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIPlugin.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIPlugin.java
index f180ded2d..b8e5ad023 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIPlugin.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIPlugin.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2011 IBM Corporation and others.
+ * Copyright (c) 2000, 2014 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -10,7 +10,6 @@
*******************************************************************************/
package org.eclipse.team.internal.ui;
-
import java.lang.reflect.InvocationTargetException;
import java.net.URL;
import java.util.*;
@@ -24,6 +23,8 @@ import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.util.IPropertyChangeListener;
import org.eclipse.jface.util.PropertyChangeEvent;
+import org.eclipse.osgi.service.debug.DebugOptions;
+import org.eclipse.osgi.service.debug.DebugOptionsListener;
import org.eclipse.swt.custom.BusyIndicator;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Display;
@@ -39,8 +40,7 @@ import org.eclipse.team.ui.mapping.ITeamStateProvider;
import org.eclipse.team.ui.synchronize.*;
import org.eclipse.ui.*;
import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
+import org.osgi.framework.*;
/**
* TeamUIPlugin is the plugin for generic, non-provider specific,
@@ -71,6 +71,8 @@ public class TeamUIPlugin extends AbstractUIPlugin {
// manages synchronize participants
private SynchronizeManager synchronizeManager;
+ private ServiceRegistration debugRegistration;
+
/**
* ID of the 'Remove from View' action.
* Value: <code>"org.eclipse.team.internal.ui.RemoveFromView"</code>
@@ -212,7 +214,12 @@ public class TeamUIPlugin extends AbstractUIPlugin {
*/
public void start(BundleContext context) throws Exception {
super.start(context);
-
+
+ // register debug options listener
+ Hashtable properties = new Hashtable(2);
+ properties.put(DebugOptions.LISTENER_SYMBOLICNAME, ID);
+ debugRegistration = context.registerService(DebugOptionsListener.class, Policy.DEBUG_OPTIONS_LISTENER, properties);
+
initializeImages(this);
// This is a backwards compatibility check to ensure that repository
@@ -246,6 +253,10 @@ public class TeamUIPlugin extends AbstractUIPlugin {
*/
public void stop(BundleContext context) throws Exception {
try {
+ // unregister debug options listener
+ debugRegistration.unregister();
+ debugRegistration = null;
+
if (synchronizeManager != null)
synchronizeManager.dispose();
} finally {
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/SynchronizeModelUpdateHandler.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/SynchronizeModelUpdateHandler.java
index 51873e562..a34b3b2b5 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/SynchronizeModelUpdateHandler.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/SynchronizeModelUpdateHandler.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
+ * Copyright (c) 2000, 2014 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -41,9 +41,6 @@ import org.eclipse.team.ui.synchronize.ISynchronizeModelElement;
* handler's thread.
*/
public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implements IResourceChangeListener, ISyncInfoSetChangeListener {
-
- private static final boolean DEBUG = Policy.DEBUG_SYNC_MODELS;
-
private static final IWorkspaceRoot ROOT = ResourcesPlugin.getWorkspace().getRoot();
// Event that indicates that the markers for a set of elements has changed
@@ -212,7 +209,7 @@ public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implem
propagateProblemMarkers(element);
updateParentLabels(element);
}
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
long time = System.currentTimeMillis() - start;
DateFormat TIME_FORMAT = new SimpleDateFormat("m:ss.SSS"); //$NON-NLS-1$
String took = TIME_FORMAT.format(new Date(time));
@@ -419,7 +416,7 @@ public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implem
public void nodeAdded(ISynchronizeModelElement element, AbstractSynchronizeModelProvider provider) {
element.addPropertyChangeListener(listener);
this.provider.nodeAdded(element, provider);
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
System.out.println("Node added: " + getDebugDisplayLabel(element) + " -> " + getDebugDisplayLabel((ISynchronizeModelElement)element.getParent()) + " : " + getDebugDisplayLabel(provider)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
}
}
@@ -436,7 +433,7 @@ public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implem
public void nodeRemoved(ISynchronizeModelElement element, AbstractSynchronizeModelProvider provider) {
element.removePropertyChangeListener(listener);
this.provider.nodeRemoved(element, provider);
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
System.out.println("Node removed: " + getDebugDisplayLabel(element) + " -> " + getDebugDisplayLabel((ISynchronizeModelElement)element.getParent()) + " : " + getDebugDisplayLabel(provider)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
}
}
@@ -450,7 +447,7 @@ public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implem
public void modelObjectCleared(ISynchronizeModelElement node) {
node.removePropertyChangeListener(listener);
this.provider.modelObjectCleared(node);
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
System.out.println("Node cleared: " + getDebugDisplayLabel(node)); //$NON-NLS-1$
}
}
@@ -579,7 +576,7 @@ public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implem
if (additionsMap != null && !additionsMap.isEmpty() && Utils.canUpdateViewer(viewer)) {
for (Iterator iter = additionsMap.keySet().iterator(); iter.hasNext();) {
ISynchronizeModelElement parent = (ISynchronizeModelElement) iter.next();
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
System.out.println("Adding child view items of " + parent.getName()); //$NON-NLS-1$
}
Set toAdd = (Set)additionsMap.get(parent);
@@ -716,14 +713,14 @@ public class SynchronizeModelUpdateHandler extends BackgroundEventHandler implem
*/
protected void doAdd(ISynchronizeModelElement parent, ISynchronizeModelElement element) {
if (additionsMap == null) {
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
System.out.println("Added view item " + element.getName()); //$NON-NLS-1$
}
AbstractTreeViewer viewer = (AbstractTreeViewer)getViewer();
viewer.add(parent, element);
} else {
// Accumulate the additions
- if (DEBUG) {
+ if (Policy.DEBUG_SYNC_MODELS) {
System.out.println("Queueing view item for addition " + element.getName()); //$NON-NLS-1$
}
Set toAdd = (Set)additionsMap.get(parent);

Back to the top