diff options
Diffstat (limited to 'plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java')
-rw-r--r-- | plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java | 177 |
1 files changed, 0 insertions, 177 deletions
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java deleted file mode 100644 index 53293cdcf..000000000 --- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java +++ /dev/null @@ -1,177 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2003, 2006 IBM Corporation 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.common.componentcore.internal.impl; - -import java.util.List; - -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.Path; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.Notifier; -import org.eclipse.emf.common.notify.impl.AdapterImpl; -import org.eclipse.emf.common.util.URI; -import org.eclipse.wst.common.componentcore.UnresolveableURIException; -import org.eclipse.wst.common.componentcore.internal.ComponentResource; -import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage; -import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent; -import org.eclipse.wst.common.componentcore.internal.util.IPathProvider; -import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil; - -/** - * <p> - * The following class is experimental until fully documented. - * </p> - */ -public class ResourceTreeRoot extends ResourceTreeNode { - - private class ResourceTreeResourceListener extends AdapterImpl { - public void notifyChanged(Notification msg) { - - if(msg.getFeature() == ComponentcorePackage.eINSTANCE.getWorkbenchComponent_Resources()) { - ComponentResource resource = null; - switch(msg.getEventType()) { - case Notification.ADD: - resource = (ComponentResource) msg.getNewValue(); - if(resource != null) - resource.eAdapters().add(getResourcePathListenerAdapter()); - break; - case Notification.ADD_MANY: - List newValues = (List) msg.getNewValue(); - for (int i = 0; i < newValues.size(); i++) { - resource = (ComponentResource) newValues.get(i); - resource.eAdapters().add(getResourcePathListenerAdapter()); - } - break; - case Notification.REMOVE: - resource = (ComponentResource) msg.getOldValue(); - if(resource != null){ - resource.eAdapters().remove(getResourcePathListenerAdapter()); - removeChild(resource); - } - break; - case Notification.REMOVE_MANY: - List removedValues = (List) msg.getOldValue(); - if (removedValues != null) { - for (int i = 0; i < removedValues.size(); i++) { - resource = (ComponentResource) removedValues.get(i); - resource.eAdapters().remove(getResourcePathListenerAdapter()); - removeChild(resource); - } - } - break; - } - } - } - } - - private class ResourcePathListener extends AdapterImpl { - - public void setTarget(Notifier newTarget) { - if(newTarget instanceof ComponentResource) { -// if(getTarget() != null) { -// if(getPathProvider().getPath((ComponentResource)getTarget()) != null) -// removeChild((ComponentResource)getTarget()); -// } - ComponentResource resource = (ComponentResource) newTarget; - if(resource != null) { - if(getPathProvider().getPath(resource) != null) - addChild(resource); - } - } - super.setTarget(newTarget); - } - - public void notifyChanged(Notification msg) { - - if(msg.getFeature() == getPathProvider().getFeature()) { - ComponentResource resource = (ComponentResource) msg.getNotifier(); - switch(msg.getEventType()) { - case Notification.SET: - - // remove the old value - IPath oldPath = (IPath)msg.getOldValue(); - if(oldPath!=null) - removeChild(oldPath, resource); - - IPath newPath = (IPath)msg.getNewValue(); - if(newPath!=null) - addChild(resource); - break; - } - } - } - } - - // TODO The source tree should be attached to the project modules root, not each module. - public static ResourceTreeRoot getSourceResourceTreeRoot(WorkbenchComponent aModule) { - ResourceTreeRootAdapter resourceTreeAdapter = (ResourceTreeRootAdapter) ExtendedEcoreUtil.getAdapter(aModule, aModule.eAdapters(), ResourceTreeRootAdapter.SOURCE_ADAPTER_TYPE); - if (resourceTreeAdapter != null) - return resourceTreeAdapter.getResourceTreeRoot(); - resourceTreeAdapter = new ResourceTreeRootAdapter(ResourceTreeRootAdapter.SOURCE_TREE); - aModule.eAdapters().add(resourceTreeAdapter); - return resourceTreeAdapter.getResourceTreeRoot(); - } - - public static ResourceTreeRoot getDeployResourceTreeRoot(WorkbenchComponent aModule) { - ResourceTreeRootAdapter resourceTreeAdapter = (ResourceTreeRootAdapter) ExtendedEcoreUtil.getAdapter(aModule, aModule.eAdapters(), ResourceTreeRootAdapter.DEPLOY_ADAPTER_TYPE); - if (resourceTreeAdapter != null) - return resourceTreeAdapter.getResourceTreeRoot(); - resourceTreeAdapter = new ResourceTreeRootAdapter(ResourceTreeRootAdapter.DEPLOY_TREE); - aModule.eAdapters().add(resourceTreeAdapter); - return resourceTreeAdapter.getResourceTreeRoot(); - } - - private final WorkbenchComponent module; - private ResourceTreeResourceListener listener; - private ResourcePathListener pathListener; - - public ResourceTreeRoot(WorkbenchComponent aModule, IPathProvider aPathProvider) { - super("/", null, aPathProvider); //$NON-NLS-1$ - module = aModule; - init(); - } - - private void init() { - module.eAdapters().add(getResourceTreeListenerAdapter()); - List moduleResources = module.getResources(); - ComponentResource moduleResource = null; - - for (int i = 0; i < moduleResources.size(); i++) { - moduleResource = (ComponentResource) moduleResources.get(i); - addChild(moduleResource); - } - - } - - protected ResourceTreeResourceListener getResourceTreeListenerAdapter() { - if(listener == null) - listener = new ResourceTreeResourceListener(); - return listener; - } - - protected ResourcePathListener getResourcePathListenerAdapter() { - if(pathListener == null) - pathListener = new ResourcePathListener(); - return pathListener; - } - - public ComponentResource[] findModuleResources(URI aURI) { - IPath path = new Path(aURI.toString()); - try { - if (ModuleURIUtil.ensureValidFullyQualifiedPlatformURI(aURI, false)) - path = path.removeFirstSegments(1); - } catch (UnresolveableURIException uurie) { - - } - return findModuleResources(path, ResourceTreeNode.CREATE_NONE); - } - -} |