diff options
Diffstat (limited to 'common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AspectChangeSupport.java')
-rw-r--r-- | common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AspectChangeSupport.java | 349 |
1 files changed, 0 insertions, 349 deletions
diff --git a/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AspectChangeSupport.java b/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AspectChangeSupport.java deleted file mode 100644 index d98f4438fd..0000000000 --- a/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AspectChangeSupport.java +++ /dev/null @@ -1,349 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2009 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.common.utility.internal.model; - -import java.util.Collection; -import java.util.EventListener; -import java.util.List; -import org.eclipse.jpt.common.utility.internal.ListenerList; -import org.eclipse.jpt.common.utility.model.Model; -import org.eclipse.jpt.common.utility.model.event.CollectionAddEvent; -import org.eclipse.jpt.common.utility.model.event.CollectionChangeEvent; -import org.eclipse.jpt.common.utility.model.event.CollectionClearEvent; -import org.eclipse.jpt.common.utility.model.event.CollectionRemoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListAddEvent; -import org.eclipse.jpt.common.utility.model.event.ListChangeEvent; -import org.eclipse.jpt.common.utility.model.event.ListClearEvent; -import org.eclipse.jpt.common.utility.model.event.ListMoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListRemoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListReplaceEvent; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.event.StateChangeEvent; -import org.eclipse.jpt.common.utility.model.event.TreeAddEvent; -import org.eclipse.jpt.common.utility.model.event.TreeChangeEvent; -import org.eclipse.jpt.common.utility.model.event.TreeClearEvent; -import org.eclipse.jpt.common.utility.model.event.TreeRemoveEvent; - -/** - * This change support class will notify listeners whenever one of the source's - * aspects has changed. Only the aspect name is passed to the listener; no - * event is generated. This allows the listeners to delegate to the change - * support object verification that an aspect as actually changed. This is - * useful for simple things like setting dirty flags, blanket validation, and - * blanket sychronization; i.e. things that might be interested in the <em>name</em> - * of the aspect that changed but not so much <em>how</em> the aspect changed. - */ -public class AspectChangeSupport - extends ChangeSupport -{ - private static final long serialVersionUID = 1L; - protected static final Class<Listener> LISTENER_CLASS = Listener.class; - - - public AspectChangeSupport(Model source, Listener listener) { - this(source); - this.addListener(listener); - } - - public AspectChangeSupport(Model source) { - super(source); - } - - protected void aspectChanged(String aspectName) { - Iterable<Listener> listeners = this.getListeners(); - if (listeners != null) { - for (Listener listener : listeners) { - listener.aspectChanged(aspectName); - } - } - } - - public void addListener(Listener listener) { - this.addListener(LISTENER_CLASS, listener); - } - - public void removeListener(Listener listener) { - this.removeListener(LISTENER_CLASS, listener); - } - - private Iterable<Listener> getListeners() { - ListenerList<Listener> listenerList = this.getListenerList(); - return (listenerList == null) ? null : listenerList.getListeners(); - } - - private ListenerList<Listener> getListenerList() { - return this.getListenerList(LISTENER_CLASS); - } - - - // ********** listener interface ********** - - /** - * Listener that will be notified of any aspect changes. - */ - public interface Listener extends EventListener { - - /** - * The specified aspect changed. - */ - void aspectChanged(String aspectName); - - } - - - // ********** state change support ********** - - @Override - public void fireStateChanged(StateChangeEvent event) { - super.fireStateChanged(event); - this.aspectChanged(null); - } - - @Override - public void fireStateChanged() { - super.fireStateChanged(); - this.aspectChanged(null); - } - - - // ********** property change support ********** - - @Override - protected void firePropertyChanged_(PropertyChangeEvent event) { - super.firePropertyChanged_(event); - this.aspectChanged(event.getPropertyName()); - } - - @Override - protected void firePropertyChanged_(String propertyName, Object oldValue, Object newValue) { - super.firePropertyChanged_(propertyName, oldValue, newValue); - this.aspectChanged(propertyName); - } - - @Override - protected void firePropertyChanged_(String propertyName, int oldValue, int newValue) { - super.firePropertyChanged_(propertyName, oldValue, newValue); - this.aspectChanged(propertyName); - } - - @Override - protected void firePropertyChanged_(String propertyName, boolean oldValue, boolean newValue) { - super.firePropertyChanged_(propertyName, oldValue, newValue); - this.aspectChanged(propertyName); - } - - - // ********** collection change support ********** - - @Override - protected void fireItemsAdded_(CollectionAddEvent event) { - super.fireItemsAdded_(event); - this.aspectChanged(event.getCollectionName()); - } - - @Override - protected void fireItemsAdded_(String collectionName, Collection<?> addedItems) { - super.fireItemsAdded_(collectionName, addedItems); - this.aspectChanged(collectionName); - } - - @Override - public void fireItemAdded(String collectionName, Object addedItem) { - super.fireItemAdded(collectionName, addedItem); - this.aspectChanged(collectionName); - } - - @Override - protected void fireItemsRemoved_(CollectionRemoveEvent event) { - super.fireItemsRemoved_(event); - this.aspectChanged(event.getCollectionName()); - } - - @Override - protected void fireItemsRemoved_(String collectionName, Collection<?> removedItems) { - super.fireItemsRemoved_(collectionName, removedItems); - this.aspectChanged(collectionName); - } - - @Override - public void fireItemRemoved(String collectionName, Object removedItem) { - super.fireItemRemoved(collectionName, removedItem); - this.aspectChanged(collectionName); - } - - @Override - public void fireCollectionCleared(CollectionClearEvent event) { - super.fireCollectionCleared(event); - this.aspectChanged(event.getCollectionName()); - } - - @Override - public void fireCollectionCleared(String collectionName) { - super.fireCollectionCleared(collectionName); - this.aspectChanged(collectionName); - } - - @Override - public void fireCollectionChanged(CollectionChangeEvent event) { - super.fireCollectionChanged(event); - this.aspectChanged(event.getCollectionName()); - } - - @Override - public void fireCollectionChanged(String collectionName, Collection<?> collection) { - super.fireCollectionChanged(collectionName, collection); - this.aspectChanged(collectionName); - } - - - // ********** list change support ********** - - @Override - protected void fireItemsAdded_(ListAddEvent event) { - super.fireItemsAdded_(event); - this.aspectChanged(event.getListName()); - } - - @Override - protected void fireItemsAdded_(String listName, int index, List<?> addedItems) { - super.fireItemsAdded_(listName, index, addedItems); - this.aspectChanged(listName); - } - - @Override - public void fireItemAdded(String listName, int index, Object addedItem) { - super.fireItemAdded(listName, index, addedItem); - this.aspectChanged(listName); - } - - @Override - protected void fireItemsRemoved_(ListRemoveEvent event) { - super.fireItemsRemoved_(event); - this.aspectChanged(event.getListName()); - } - - @Override - protected void fireItemsRemoved_(String listName, int index, List<?> removedItems) { - super.fireItemsRemoved_(listName, index, removedItems); - this.aspectChanged(listName); - } - - @Override - public void fireItemRemoved(String listName, int index, Object removedItem) { - super.fireItemRemoved(listName, index, removedItem); - this.aspectChanged(listName); - } - - @Override - protected void fireItemsReplaced_(ListReplaceEvent event) { - super.fireItemsReplaced_(event); - this.aspectChanged(event.getListName()); - } - - @Override - protected void fireItemsReplaced_(String listName, int index, List<?> newItems, List<?> replacedItems) { - super.fireItemsReplaced_(listName, index, newItems, replacedItems); - this.aspectChanged(listName); - } - - @Override - protected void fireItemReplaced_(String listName, int index, Object newItem, Object replacedItem) { - super.fireItemReplaced_(listName, index, newItem, replacedItem); - this.aspectChanged(listName); - } - - @Override - protected void fireItemsMoved_(ListMoveEvent event) { - super.fireItemsMoved_(event); - this.aspectChanged(event.getListName()); - } - - @Override - protected void fireItemsMoved_(String listName, int targetIndex, int sourceIndex, int length) { - super.fireItemsMoved_(listName, targetIndex, sourceIndex, length); - this.aspectChanged(listName); - } - - @Override - public void fireListCleared(ListClearEvent event) { - super.fireListCleared(event); - this.aspectChanged(event.getListName()); - } - - @Override - public void fireListCleared(String listName) { - super.fireListCleared(listName); - this.aspectChanged(listName); - } - - @Override - public void fireListChanged(ListChangeEvent event) { - super.fireListChanged(event); - this.aspectChanged(event.getListName()); - } - - @Override - public void fireListChanged(String listName, List<?> list) { - super.fireListChanged(listName, list); - this.aspectChanged(listName); - } - - - // ********** tree change support ********** - - @Override - public void fireNodeAdded(TreeAddEvent event) { - super.fireNodeAdded(event); - this.aspectChanged(event.getTreeName()); - } - - @Override - public void fireNodeAdded(String treeName, List<?> path) { - super.fireNodeAdded(treeName, path); - this.aspectChanged(treeName); - } - - @Override - public void fireNodeRemoved(TreeRemoveEvent event) { - super.fireNodeRemoved(event); - this.aspectChanged(event.getTreeName()); - } - - @Override - public void fireNodeRemoved(String treeName, List<?> path) { - super.fireNodeRemoved(treeName, path); - this.aspectChanged(treeName); - } - - @Override - public void fireTreeCleared(TreeClearEvent event) { - super.fireTreeCleared(event); - this.aspectChanged(event.getTreeName()); - } - - @Override - public void fireTreeCleared(String treeName) { - super.fireTreeCleared(treeName); - this.aspectChanged(treeName); - } - - @Override - public void fireTreeChanged(TreeChangeEvent event) { - super.fireTreeChanged(event); - this.aspectChanged(event.getTreeName()); - } - - @Override - public void fireTreeChanged(String treeName, Collection<?> nodes) { - super.fireTreeChanged(treeName, nodes); - this.aspectChanged(treeName); - } - -} |