Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ConfigurationResourceListener.java')
-rw-r--r--plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ConfigurationResourceListener.java88
1 files changed, 0 insertions, 88 deletions
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ConfigurationResourceListener.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ConfigurationResourceListener.java
deleted file mode 100644
index 2474b4ad3..000000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ConfigurationResourceListener.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2011 SAS Institute, Inc and others.
- * 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:
- * SAS Institute, Inc - Initial API and implementation
- **********************************************************************/
-package org.eclipse.jst.server.tomcat.core.internal;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.IServerType;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.core.internal.ServerType;
-
-public class ConfigurationResourceListener implements IResourceChangeListener {
-
- private IProject serversProject;
-
- /**
- * Currently, only changes to Tomcat configuration files are detected and the associated
- * server's state updated. This method needs to be as brief as possible if the change
- * is unrelated to server configuration changes. Since the Servers project would change
- * so rarely, it is worth saving some cycles in the resource listener by caching this project.
- */
- public void resourceChanged(IResourceChangeEvent event) {
- if (event.getType() == IResourceChangeEvent.POST_CHANGE) {
- IProject project = getServersProject();
- if (project != null) {
- IResourceDelta delta = event.getDelta();
- if (delta != null) {
- IResourceDelta serversProjectDelta = delta.findMember(project.getFullPath());
- if (serversProjectDelta != null) {
- // The change occurred within the Servers project.
- IResourceDelta [] childDelta = serversProjectDelta.getAffectedChildren();
- if (childDelta.length > 0) {
- IServer [] servers = ServerCore.getServers();
- for (int i = 0; i < childDelta.length; i++) {
- // Check if this subfolder of the Servers folder matches a Tomcat configuration folder
- for (int j = 0; j < servers.length; j++) {
- IServerType serverType = servers[j].getServerType();
- if (serverType.getId().startsWith("org.eclipse.jst.server.tomcat.")) {
- IFolder configFolder = servers[j].getServerConfiguration();
- if (configFolder != null) {
- if (childDelta[i].getFullPath().equals(configFolder.getFullPath())) {
- // Found a Tomcat server affected by this delta. Update this server's publish state.
- TomcatServerBehaviour tcServerBehaviour = (TomcatServerBehaviour)servers[j].loadAdapter(TomcatServerBehaviour.class, null);
- if (tcServerBehaviour != null) {
- // Indicate that this server needs to publish and restart if running
- tcServerBehaviour.setTomcatServerPublishState(IServer.PUBLISH_STATE_INCREMENTAL);
- tcServerBehaviour.setTomcatServerRestartState(true);
- }
- break;
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
-
- private IProject getServersProject() {
- if (serversProject == null) {
- IProject project;
- try {
- project = ServerType.getServerProject();
- synchronized (this) {
- serversProject = project;
- }
- } catch (CoreException e) {
- // Ignore
- }
- }
- return serversProject;
- }
-}

Back to the top