Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/AbstractJSFAppConfigLocater.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/AbstractJSFAppConfigLocater.java172
1 files changed, 0 insertions, 172 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/AbstractJSFAppConfigLocater.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/AbstractJSFAppConfigLocater.java
deleted file mode 100644
index 943fecb99..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/AbstractJSFAppConfigLocater.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 Oracle Corporation.
- * 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:
- * Ian Trimble - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.core.jsfappconfig;
-
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-/**
- * Abstract implementation of {@link IJSFAppConfigLocater} that provides common
- * locater functionality. {@link IJSFAppConfigLocater} implementations should
- * extend this class or provide similar functionality.
- *
- * <p><b>Provisional API - subject to change</b></p>
- *
- * @author Ian Trimble - Oracle
- */
-public abstract class AbstractJSFAppConfigLocater implements IJSFAppConfigLocater {
-
- /**
- * {@link JSFAppConfigManager} instance to which this locater belongs.
- */
- protected JSFAppConfigManager manager = null;
-
- /**
- * Set of known {@link IJSFAppConfigProvider} instances.
- */
- protected Set configProviders = new LinkedHashSet();
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.IJSFAppConfigLocater#setJSFAppConfigManager(org.eclipse.jst.jsf.core.jsfappconfig.JSFAppConfigManager)
- */
- public void setJSFAppConfigManager(JSFAppConfigManager manager) {
- this.manager = manager;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.IJSFAppConfigLocater#getJSFAppConfigManager()
- */
- public JSFAppConfigManager getJSFAppConfigManager() {
- return manager;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.IJSFAppConfigLocater#startLocating()
- */
- public abstract void startLocating();
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.IJSFAppConfigLocater#stopLocating()
- */
- public abstract void stopLocating();
-
- /* (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.IJSFAppConfigLocater#getJSFAppConfigProviders()
- */
- public Set getJSFAppConfigProviders() {
- return configProviders;
- }
-
- /**
- * Adds an {@link IJSFAppConfigProvider} instance to the set of known
- * instances and notifies {@link JSFAppConfigManager} instance of the
- * addition if successful.
- *
- * @param configProvider {@link IJSFAppConfigProvider} instance to be
- * added.
- * @return true if instance was added, else false.
- */
- protected boolean addConfigProvider(IJSFAppConfigProvider configProvider) {
- boolean added = configProviders.add(configProvider);
- if (added && manager != null) {
- configProvider.setJSFAppConfigLocater(this);
- manager.notifyJSFAppConfigProvidersChangeListeners(
- configProvider,
- JSFAppConfigProvidersChangeEvent.ADDED);
- }
- return added;
- }
-
- /**
- * Removes an {@link IJSFAppConfigProvider} instance from the set of known
- * instances and notifies {@link JSFAppConfigManager} instance of the
- * removal if successful.
- *
- * @param configProvider {@link IJSFAppConfigProvider} instance to be
- * removed.
- * @return true if instance was removed, else false.
- */
- protected boolean removeConfigProvider(IJSFAppConfigProvider configProvider) {
- if (configProvider != null) {
- configProvider.releaseFacesConfigModel();
- }
- boolean removed = configProviders.remove(configProvider);
- if (removed && manager != null) {
- manager.notifyJSFAppConfigProvidersChangeListeners(
- configProvider,
- JSFAppConfigProvidersChangeEvent.REMOVED);
- }
- return removed;
- }
-
- /**
- * Updates known set of {@link IJSFAppConfigProvider} instances by removing
- * instances that are in the existing set but not in the passed set and
- * adding instances that are in the passed set but not in the existing set.
- * Instances that are in both the existing set and the passed set are left
- * unchanged. The {@link JSFAppConfigManager} is notified of removals and
- * additions, and no notification is sent for instances that are left
- * unchanged.
- *
- * @param newConfigProviders New set of {@link IJSFAppConfigProvider}
- * instances.
- */
- protected void updateConfigProviders(Set newConfigProviders) {
- if (newConfigProviders != null) {
- LinkedHashSet oldConfigProviders = new LinkedHashSet();
- //iterate over existing set
- Iterator itConfigProviders = configProviders.iterator();
- while (itConfigProviders.hasNext()) {
- IJSFAppConfigProvider configProvider = (IJSFAppConfigProvider)itConfigProviders.next();
- //remove provider from new set if it is already in existing set
- if (!newConfigProviders.remove(configProvider)) {
- //stage removal of existing provider that is not in new set
- oldConfigProviders.add(configProvider);
- }
- }
- //remove providers that are not in new set from existing set
- Iterator itOldConfigProviders = oldConfigProviders.iterator();
- while (itOldConfigProviders.hasNext()) {
- IJSFAppConfigProvider configProvider = (IJSFAppConfigProvider)itOldConfigProviders.next();
- //call removeConfigProvider(...) method so manager's listeners are notified
- removeConfigProvider(configProvider);
- }
- //add providers that are still in new set to existing set
- Iterator itNewConfigProviders = newConfigProviders.iterator();
- while (itNewConfigProviders.hasNext()) {
- IJSFAppConfigProvider configProvider = (IJSFAppConfigProvider)itNewConfigProviders.next();
- //call addConfigProvider(...) method so manager's listeners are notified
- addConfigProvider(configProvider);
- }
- }
- }
-
- /**
- * Removes all {@link IJSFAppConfigProvider} instances from the known set,
- * sending notification of all removals to the {@link JSFAppConfigManager}
- * instance.
- */
- protected void removeAllConfigProviders() {
- updateConfigProviders(Collections.EMPTY_SET);
- }
-
- /*
- * (non-Javadoc)
- * @see java.lang.Object#finalize()
- */
- protected void finalize() {
- removeAllConfigProviders();
- }
-
-}

Back to the top