Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java')
-rw-r--r--plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java279
1 files changed, 0 insertions, 279 deletions
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java
deleted file mode 100644
index e46fa9ab9..000000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java
+++ /dev/null
@@ -1,279 +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.internal.emfworkbench.integration;
-
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.frameworks.internal.operations.IOperationHandler;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.edit.WrappingCommandStack;
-
-/**
- * Insert the type's description here. Creation date: (05/21/01 8:26:32 PM)
- *
- * @author: Administrator
- */
-public class ComposedEditModel extends EditModel implements EditModelListener {
-
- private List children = null;
- private Map childrenMap = null;
- private List cachedKeys = new ArrayList();
-
- /**
- * ComposedEditModel constructor comment.
- */
- public ComposedEditModel(String editModelID, EMFWorkbenchContext context) {
- super(editModelID, context, false);
- }
-
-
- public void createChildrenIfNecessary(ComposedAccessorKey composedAccessorKey) {
- //do nothing
- }
-
- /**
- * @param newKey
- */
- public void cacheAccessorKey(ComposedAccessorKey newKey) {
- if (!cachedKeys.contains(newKey))
- cachedKeys.add(newKey);
- }
-
- // Is this necessary anymore? The only diff seems to be it doesn't release resources
-// public void dispose() {
-// disposing = true;
-// if (commandStack != null)
-// commandStack.removeCommandStackListener(this);
-// if (hasListeners())
-// notifyListeners(new EditModelEvent(EditModelEvent.PRE_DISPOSE, this));
-// releasePreloadResources();
-// releaseIdentifiers();
-// emfContext = null;
-// resources = null;
-// disposing = false;
-// project = null;
-// cachedKeys = new ArrayList();
-// }
-
- public EditModel.Reference addChild(String editModelID, Map params, Object accessorKey) {
- return addChild(editModelID, params, ComposedAccessorKey.getComposedAccessorKey(accessorKey, this));
- }
-
- public EditModel.Reference addChild(String editModelID, Map params, ComposedAccessorKey composedAccessorKey) {
-
- EditModel editModel = getEmfContext().getEditModelForWrite(editModelID, composedAccessorKey, params);
- editModel.addListener(this);
-
- getChildrenMap().put(editModel.getReference(), editModel);
- getChildren().add(editModel);
-
- return editModel.getReference();
- }
-
- public void removeChild(EditModel.Reference reference, Object accessorKey) {
- ComposedAccessorKey composedAccessorKey = ComposedAccessorKey.getComposedAccessorKey(accessorKey, this);
- EditModel editModel = (EditModel) getChildrenMap().remove(reference);
- if (editModel != null) {
- editModel.releaseAccess(composedAccessorKey);
- editModel.removeListener(this);
- getChildren().remove(editModel);
- }
- }
-
- public Iterator getContainedReferences() {
- return getChildrenMap().keySet().iterator();
- }
-
- public EditModel getContainedEditModel(EditModel.Reference reference) {
- return (EditModel) getChildrenMap().get(reference);
- }
-
- /**
- * Return the CommandStack.
- */
- protected BasicCommandStack createCommandStack() {
- return new WrappingCommandStack(this);
- }
-
- /**
- * Forward all events to the listeners for this model
- */
- public void editModelChanged(EditModelEvent anEvent) {
- if (hasListeners())
- notifyListeners(anEvent);
- }
-
- public Set getAffectedFiles() {
- Set aSet = new HashSet();
- List models = getChildren();
- for (int i = 0; i < models.size(); i++) {
- EditModel child = (EditModel) models.get(i);
- aSet.addAll(child.getAffectedFiles());
- }
- return aSet;
- }
-
- public List getChildren() {
- if (children == null)
- children = new ArrayList();
- return children;
- }
-
- protected Map getChildrenMap() {
- if (childrenMap == null)
- childrenMap = new HashMap();
- return childrenMap;
- }
-
- /**
- * Pass along to children.
- */
- protected void handleSaveIfNecessaryDidNotSave(IProgressMonitor monitor) {
- List list = getChildren();
- EditModel editModel;
- for (int i = 0; i < list.size(); i++) {
- editModel = (EditModel) list.get(i);
- editModel.handleSaveIfNecessaryDidNotSave(monitor);
- }
- }
-
- /**
- * Return whether a save is needed on the CommandStack
- */
- public boolean isDirty() {
- Iterator editModels = getChildren().iterator();
- while (editModels.hasNext()) {
- EditModel editModel = (EditModel) editModels.next();
- if (editModel.isDirty())
- return true;
- }
- return false;
- }
-
- public boolean isReadOnly() {
- return false;
- }
-
- /**
- * Return whether a save is needed on the CommandStack
- */
- public boolean isInterrestedInResource(Resource aResource) {
- Iterator editModels = getChildren().iterator();
- while (editModels.hasNext()) {
- EditModel editModel = (EditModel) editModels.next();
- if (editModel.isInterrestedInResource(aResource))
- return true;
- }
- return false;
- }
-
- public void primSave(IProgressMonitor monitor) {
- List list = getChildren();
- for (int i = 0; i < list.size(); i++)
- ((EditModel) list.get(i)).primSave(monitor);
- }
-
- /**
- * This only increments the reference count of the children and should only be called if you
- * know what you are doing.
- */
- public void access(Object accessorKey) {
- ComposedAccessorKey composedAccessorKey = ComposedAccessorKey.getComposedAccessorKey(accessorKey, this);
- if (getChildren().size() == 0) {
- createChildrenIfNecessary(composedAccessorKey);
- } else {
-
- List tempchildren = getChildren();
- for (int i = 0; i < tempchildren.size(); i++) {
- EditModel model = (EditModel) tempchildren.get(i);
- model.access(composedAccessorKey);
- }
- }
- // removing for defect 1978, children should do all the accessing
- super.access(accessorKey);
-
- }
-
- /**
- * This method should be called from each client when they are finished working with the
- * EditModel.
- */
- public void releaseAccess(Object accessorKey) {
- List tempchildren = getChildren();
- ComposedAccessorKey composedAccessorKey = ComposedAccessorKey.getComposedAccessorKey(accessorKey, this);
- for (int i = 0; i < tempchildren.size(); i++) {
- EditModel model = (EditModel) tempchildren.get(i);
- model.releaseAccess(composedAccessorKey);
- }
- removeKeyFromCache(composedAccessorKey);
- // Removing this call... Children should be able to handle all releasing defect 1978
- super.releaseAccess(accessorKey);
- }
-
- public void removeKeyFromCache(ComposedAccessorKey key) {
- cachedKeys.remove(key);
- }
-
- /**
- * If one should save, they all should save.
- */
- protected boolean shouldSave() {
- List list = getChildren();
- EditModel editModel;
- for (int i = 0; i < list.size(); i++) {
- editModel = (EditModel) list.get(i);
- if (editModel.shouldSave())
- return true;
- }
- return false;
- }
-
- /**
- * If one should save, they all should save.
- */
- protected boolean shouldSave(IOperationHandler operationHandler) {
- List list = getChildren();
- EditModel editModel;
- for (int i = 0; i < list.size(); i++) {
- editModel = (EditModel) list.get(i);
- if (editModel.shouldSave(operationHandler))
- return true;
- }
- return false;
- }
-
- /**
- * @see com.ibm.etools.j2ee.workbench.EditModel#getNonResourceFiles()
- */
- public List getNonResourceFiles() {
- List list = getChildren();
- List result = new ArrayList();
- EditModel editModel;
- for (int i = 0; i < list.size(); i++) {
- editModel = (EditModel) list.get(i);
- List files = editModel.getNonResourceFiles();
- if (files != null && !files.isEmpty())
- result.addAll(files);
- }
- return result;
- }
-
-}

Back to the top