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/RuntimeClasspathJSFAppConfigLocater.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/RuntimeClasspathJSFAppConfigLocater.java119
1 files changed, 0 insertions, 119 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/RuntimeClasspathJSFAppConfigLocater.java b/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/RuntimeClasspathJSFAppConfigLocater.java
deleted file mode 100644
index 7cb04b06b..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.core/src/org/eclipse/jst/jsf/core/jsfappconfig/RuntimeClasspathJSFAppConfigLocater.java
+++ /dev/null
@@ -1,119 +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.io.IOException;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jdt.core.ElementChangedEvent;
-import org.eclipse.jdt.core.IElementChangedListener;
-import org.eclipse.jdt.core.IJavaElementDelta;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.jsf.core.internal.JSFCorePlugin;
-
-/**
- * RuntimeClasspathJSFAppConfigLocater attempts to locate application
- * configuration files in JAR files on the runtime classpath. The runtime
- * classpath includes the server runtime classpath and the JAR files that will
- * be deployed to the web application's /WEB-INF/lib folder.
- *
- * <p><b>Provisional API - subject to change</b></p>
- *
- * @author Ian Trimble - Oracle
- */
-public class RuntimeClasspathJSFAppConfigLocater extends AbstractJSFAppConfigLocater
- implements IElementChangedListener {
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.AbstractJSFAppConfigLocater#startLocating()
- */
- public void startLocating() {
- locateProviders();
- JavaCore.addElementChangedListener(this);
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.jst.jsf.core.jsfappconfig.AbstractJSFAppConfigLocater#stopLocating()
- */
- public void stopLocating() {
- JavaCore.removeElementChangedListener(this);
- }
-
- /**
- * Locates application configuration resources specified in JAR files on
- * the runtime classpath, and updates the set of
- * {@link IJSFAppConfigProvider} instances accordingly.
- */
- public void locateProviders() {
- try {
- List JARs = JSFAppConfigUtils.getConfigFileJARsFromClasspath(manager.getProject());
- Iterator itJARs = JARs.iterator();
- Set newConfigProviders = new LinkedHashSet();
- while (itJARs.hasNext()) {
- String JARFilename = (String)itJARs.next();
- JARFileJSFAppConfigProvider configProvider = new JARFileJSFAppConfigProvider(JARFilename);
- newConfigProviders.add(configProvider);
- }
- updateConfigProviders(newConfigProviders);
- } catch(CoreException ce) {
- //log error
- JSFCorePlugin.log(IStatus.ERROR, ce.getLocalizedMessage(), ce);
- } catch(IOException ioe) {
- //log error
- JSFCorePlugin.log(IStatus.ERROR, ioe.getLocalizedMessage(), ioe);
- }
- }
-
- /**
- * Called when a Java element has changed.
- *
- * @param event ElementChangedEvent instance describing the change.
- */
- public void elementChanged(ElementChangedEvent event) {
- if (classpathChanged(event.getDelta())) {
- locateProviders();
- }
- }
-
- /**
- * Recursively tests if the passed IJavaElementDelta instance or any of its
- * descendents indicate a classpath change has occurred.
- *
- * @param delta IJavaElement instance to be tested.
- * @return true if a claspath change has occurred, else false.
- */
- protected boolean classpathChanged(IJavaElementDelta delta) {
- int deltaFlags = delta.getFlags();
- if (((deltaFlags & IJavaElementDelta.F_ADDED_TO_CLASSPATH) == IJavaElementDelta.F_ADDED_TO_CLASSPATH) ||
- ((deltaFlags & IJavaElementDelta.F_ARCHIVE_CONTENT_CHANGED) == IJavaElementDelta.F_ARCHIVE_CONTENT_CHANGED) ||
- ((deltaFlags & IJavaElementDelta.F_REMOVED_FROM_CLASSPATH) == IJavaElementDelta.F_REMOVED_FROM_CLASSPATH)) {
- return true;
- }
- boolean changed = false;
- IJavaElementDelta[] childDeltas = delta.getAffectedChildren();
- if (childDeltas != null) {
- for (int i = 0; i < childDeltas.length; i++) {
- if (classpathChanged(childDeltas[i])) {
- changed = true;
- break;
- }
- }
- }
- return changed;
- }
-}

Back to the top