Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSusan Franklin2010-04-24 22:04:25 +0000
committerSusan Franklin2010-04-24 22:04:25 +0000
commit9f292a983622ff559d82bc38acd0e8207ae41d6a (patch)
tree1f8260661c83b51f844c9373b07b186c88935e0a /bundles/org.eclipse.equinox.p2.ui
parent0dd31372793e31f297d920c200464284511e6ed3 (diff)
downloadrt.equinox.p2-9f292a983622ff559d82bc38acd0e8207ae41d6a.tar.gz
rt.equinox.p2-9f292a983622ff559d82bc38acd0e8207ae41d6a.tar.xz
rt.equinox.p2-9f292a983622ff559d82bc38acd0e8207ae41d6a.zip
Bug 300860 - [ui] Support event tracing
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.ui')
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvUIProvisioningListener.java12
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java1
-rw-r--r--bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/ProvisioningUI.java7
3 files changed, 13 insertions, 7 deletions
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvUIProvisioningListener.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvUIProvisioningListener.java
index 5b5cbd92a..b6ea74112 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvUIProvisioningListener.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvUIProvisioningListener.java
@@ -17,6 +17,7 @@ import org.eclipse.equinox.internal.provisional.p2.core.eventbus.SynchronousProv
import org.eclipse.equinox.internal.provisional.p2.repository.RepositoryEvent;
import org.eclipse.equinox.p2.engine.IProfileEvent;
import org.eclipse.equinox.p2.repository.IRepository;
+import org.eclipse.equinox.p2.ui.ProvisioningUI;
/**
* ProvisioningListener which handles event batching and other
@@ -33,7 +34,6 @@ public abstract class ProvUIProvisioningListener implements SynchronousProvision
public static final int PROV_EVENT_ARTIFACT_REPOSITORY = 0x0008;
int eventTypes = 0;
- int batchCount = 0;
String name;
public ProvUIProvisioningListener(String name, int eventTypes) {
@@ -43,16 +43,14 @@ public abstract class ProvUIProvisioningListener implements SynchronousProvision
public void notify(EventObject o) {
if (o instanceof RepositoryOperationBeginningEvent) {
- batchCount++;
if (Tracing.DEBUG_EVENTS_CLIENT)
- Tracing.debug("Batch Eventing: Ignore Following Events. Batch count: " + Integer.toString(batchCount) + getReceiverString()); //$NON-NLS-1$
+ Tracing.debug("Batch Eventing: Ignore Following Events. " + getReceiverString()); //$NON-NLS-1$
} else if (o instanceof RepositoryOperationEndingEvent) {
- batchCount--;
if (Tracing.DEBUG_EVENTS_CLIENT)
- Tracing.debug("Batch Eventing: Batch Ended. Batch count: " + Integer.toString(batchCount) + getReceiverString()); //$NON-NLS-1$
+ Tracing.debug("Batch Eventing: Batch Ended. " + getReceiverString()); //$NON-NLS-1$
// A batch operation completed. Refresh.
- if (batchCount <= 0) {
+ if (ProvisioningUI.getDefaultUI().getOperationRunner().eventBatchCount <= 0) {
if (Tracing.DEBUG_EVENTS_CLIENT)
Tracing.debug("Batch Eventing Complete." + getReceiverString()); //$NON-NLS-1$
RepositoryOperationEndingEvent event = (RepositoryOperationEndingEvent) o;
@@ -69,7 +67,7 @@ public abstract class ProvUIProvisioningListener implements SynchronousProvision
Tracing.debug("No Refresh on Batch Complete."); //$NON-NLS-1$
}
}
- } else if (batchCount > 0) {
+ } else if (ProvisioningUI.getDefaultUI().getOperationRunner().eventBatchCount > 0) {
if (Tracing.DEBUG_EVENTS_CLIENT)
Tracing.debug(name + " Ignoring: " + o.toString()); //$NON-NLS-1$
// We are in the middle of a batch operation
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java
index e6f97eee1..0abe63488 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java
@@ -38,6 +38,7 @@ public class ProvisioningOperationRunner {
boolean suppressRestart = false;
ProvisioningUI ui;
+ public int eventBatchCount = 0;
public ProvisioningOperationRunner(ProvisioningUI ui) {
this.ui = ui;
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/ProvisioningUI.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/ProvisioningUI.java
index 5975e7d87..423fbb18c 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/ProvisioningUI.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/p2/ui/ProvisioningUI.java
@@ -17,6 +17,7 @@ import java.util.Collection;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.equinox.internal.p2.core.helpers.ServiceHelper;
+import org.eclipse.equinox.internal.p2.core.helpers.Tracing;
import org.eclipse.equinox.internal.p2.ui.*;
import org.eclipse.equinox.internal.p2.ui.dialogs.*;
import org.eclipse.equinox.internal.provisional.p2.repository.RepositoryEvent;
@@ -348,6 +349,9 @@ public class ProvisioningUI {
* a corresponding operation ending event is signaled.
*/
public void signalRepositoryOperationStart() {
+ runner.eventBatchCount++;
+ if (Tracing.DEBUG_EVENTS_CLIENT)
+ Tracing.debug("Batch Count Incremented to: " + Integer.toString(runner.eventBatchCount)); //$NON-NLS-1$
ProvUI.getProvisioningEventBus(getSession()).publishEvent(new RepositoryOperationBeginningEvent(this));
}
@@ -359,6 +363,9 @@ public class ProvisioningUI {
* @param update <code>true</code> if the event should be reflected in the UI, false if it should be ignored.
*/
public void signalRepositoryOperationComplete(RepositoryEvent event, boolean update) {
+ runner.eventBatchCount--;
+ if (Tracing.DEBUG_EVENTS_CLIENT)
+ Tracing.debug("Batch Count Decremented to: " + Integer.toString(runner.eventBatchCount)); //$NON-NLS-1$
ProvUI.getProvisioningEventBus(getSession()).publishEvent(new RepositoryOperationEndingEvent(this, update, event));
}

Back to the top