Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.utility/src/org/eclipse/jpt/utility/internal/model/UIChangeEventDispatcher.java')
-rw-r--r--jpa/plugins/org.eclipse.jpt.utility/src/org/eclipse/jpt/utility/internal/model/UIChangeEventDispatcher.java377
1 files changed, 0 insertions, 377 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.utility/src/org/eclipse/jpt/utility/internal/model/UIChangeEventDispatcher.java b/jpa/plugins/org.eclipse.jpt.utility/src/org/eclipse/jpt/utility/internal/model/UIChangeEventDispatcher.java
deleted file mode 100644
index 7e023b61ff..0000000000
--- a/jpa/plugins/org.eclipse.jpt.utility/src/org/eclipse/jpt/utility/internal/model/UIChangeEventDispatcher.java
+++ /dev/null
@@ -1,377 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Oracle. 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 http://www.eclipse.org/legal/epl-v10.html.
- *
- * Contributors:
- * Oracle - initial API and implementation
- ******************************************************************************/
-package org.eclipse.jpt.utility.internal.model;
-
-import java.io.Serializable;
-
-import org.eclipse.jpt.utility.internal.model.event.CollectionChangeEvent;
-import org.eclipse.jpt.utility.internal.model.event.ListChangeEvent;
-import org.eclipse.jpt.utility.internal.model.event.PropertyChangeEvent;
-import org.eclipse.jpt.utility.internal.model.event.StateChangeEvent;
-import org.eclipse.jpt.utility.internal.model.event.TreeChangeEvent;
-import org.eclipse.jpt.utility.internal.model.listener.CollectionChangeListener;
-import org.eclipse.jpt.utility.internal.model.listener.ListChangeListener;
-import org.eclipse.jpt.utility.internal.model.listener.PropertyChangeListener;
-import org.eclipse.jpt.utility.internal.model.listener.StateChangeListener;
-import org.eclipse.jpt.utility.internal.model.listener.TreeChangeListener;
-
-/**
- * UI-aware implementation of ChangeEventDispatcher interface:
- * If we are executing on the UI event-dispatch thread,
- * simply forward the change notification directly to the listener.
- * If we are executing on some other thread, queue up the
- * notification on the UI event queue so it can be executed
- * on the event-dispatch thread (after the pending events have
- * been dispatched).
- */
-public class UIChangeEventDispatcher
- implements ChangeEventDispatcher, Serializable
-{
- /**
- * This adapter will provide the platform-specific behavior
- * (e.g. AWT, SWT).
- */
- private final PlatformAdapter platformAdapter;
-
- private static final long serialVersionUID = 1L;
-
-
- public UIChangeEventDispatcher(PlatformAdapter platformAdapter) {
- super();
- if (platformAdapter == null) {
- throw new NullPointerException();
- }
- this.platformAdapter = platformAdapter;
- }
-
-
- // ********** ChangeEventDispatcher implementation **********
-
- public void stateChanged(final StateChangeListener listener, final StateChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.stateChanged(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.stateChanged(event);
- }
- @Override
- public String toString() {
- return "stateChanged";
- }
- }
- );
- }
- }
-
- public void propertyChanged(final PropertyChangeListener listener, final PropertyChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.propertyChanged(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.propertyChanged(event);
- }
- @Override
- public String toString() {
- return "propertyChanged";
- }
- }
- );
- }
- }
-
- public void itemsAdded(final CollectionChangeListener listener, final CollectionChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.itemsAdded(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.itemsAdded(event);
- }
- @Override
- public String toString() {
- return "itemsAdded (Collection)";
- }
- }
- );
- }
- }
-
- public void itemsRemoved(final CollectionChangeListener listener, final CollectionChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.itemsRemoved(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.itemsRemoved(event);
- }
- @Override
- public String toString() {
- return "itemsRemoved (Collection)";
- }
- }
- );
- }
- }
-
- public void collectionCleared(final CollectionChangeListener listener, final CollectionChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.collectionCleared(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.collectionCleared(event);
- }
- @Override
- public String toString() {
- return "collectionCleared";
- }
- }
- );
- }
- }
-
- public void collectionChanged(final CollectionChangeListener listener, final CollectionChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.collectionChanged(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.collectionChanged(event);
- }
- @Override
- public String toString() {
- return "collectionChanged";
- }
- }
- );
- }
- }
-
- public void itemsAdded(final ListChangeListener listener, final ListChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.itemsAdded(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.itemsAdded(event);
- }
- @Override
- public String toString() {
- return "itemsAdded (List)";
- }
- }
- );
- }
- }
-
- public void itemsRemoved(final ListChangeListener listener, final ListChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.itemsRemoved(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.itemsRemoved(event);
- }
- @Override
- public String toString() {
- return "itemsRemoved (List)";
- }
- }
- );
- }
- }
-
- public void itemsReplaced(final ListChangeListener listener, final ListChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.itemsReplaced(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.itemsReplaced(event);
- }
- @Override
- public String toString() {
- return "itemsReplaced (List)";
- }
- }
- );
- }
- }
-
- public void itemsMoved(final ListChangeListener listener, final ListChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.itemsMoved(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.itemsMoved(event);
- }
- @Override
- public String toString() {
- return "itemsMoved (List)";
- }
- }
- );
- }
- }
-
- public void listCleared(final ListChangeListener listener, final ListChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.listCleared(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.listCleared(event);
- }
- @Override
- public String toString() {
- return "listCleared";
- }
- }
- );
- }
- }
-
- public void listChanged(final ListChangeListener listener, final ListChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.listChanged(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.listChanged(event);
- }
- @Override
- public String toString() {
- return "listChanged";
- }
- }
- );
- }
- }
-
- public void nodeAdded(final TreeChangeListener listener, final TreeChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.nodeAdded(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.nodeAdded(event);
- }
- @Override
- public String toString() {
- return "nodeAdded";
- }
- }
- );
- }
- }
-
- public void nodeRemoved(final TreeChangeListener listener, final TreeChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.nodeRemoved(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.nodeRemoved(event);
- }
- @Override
- public String toString() {
- return "nodeRemoved";
- }
- }
- );
- }
- }
-
- public void treeCleared(final TreeChangeListener listener, final TreeChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.treeCleared(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.treeCleared(event);
- }
- @Override
- public String toString() {
- return "treeCleared";
- }
- }
- );
- }
- }
-
- public void treeChanged(final TreeChangeListener listener, final TreeChangeEvent event) {
- if (this.isExecutingOnUIThread()) {
- listener.treeChanged(event);
- } else {
- this.executeOnUIThread(
- new Runnable() {
- public void run() {
- listener.treeChanged(event);
- }
- @Override
- public String toString() {
- return "treeChanged";
- }
- }
- );
- }
- }
-
-
- // ********** internal methods **********
-
- private boolean isExecutingOnUIThread() {
- return this.platformAdapter.currentThreadIsUIThread();
- }
-
- private void executeOnUIThread(Runnable r) {
- this.platformAdapter.executeOnUIThread(r);
- }
-
-
- // ********** platform adapter **********
-
- /**
- * Define the UI platform-specific methods required by the UI change event
- * dispatcher.
- */
- public interface PlatformAdapter {
-
- /**
- * Return whether the current thread is the UI event dispatch thread.
- */
- boolean currentThreadIsUIThread();
-
- /**
- * Execute the specified runnable on the UI event dispatch thread.
- */
- void executeOnUIThread(Runnable r);
-
- }
-
-}

Back to the top