diff options
Diffstat (limited to 'bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java')
-rw-r--r-- | bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java | 273 |
1 files changed, 0 insertions, 273 deletions
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java deleted file mode 100644 index 727329abfd..0000000000 --- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java +++ /dev/null @@ -1,273 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2005 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 - * Jens Lukowski/Innoopract - initial renaming/restructuring - * - *******************************************************************************/ -package org.eclipse.wst.dtd.core.internal.document; - -import java.io.File; -import java.util.Iterator; -import java.util.Vector; - -import org.eclipse.wst.dtd.core.internal.DTDFile; -import org.eclipse.wst.dtd.core.internal.DTDNode; -import org.eclipse.wst.dtd.core.internal.Entity; -import org.eclipse.wst.dtd.core.internal.NodeList; -import org.eclipse.wst.dtd.core.internal.event.IDTDFileListener; -import org.eclipse.wst.dtd.core.internal.event.NodesEvent; -import org.eclipse.wst.dtd.core.internal.provisional.document.DTDModel; -import org.eclipse.wst.dtd.core.internal.util.DTDReferenceUpdater; -import org.eclipse.wst.dtd.core.internal.util.LabelValuePair; -import org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel; -import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion; -import org.eclipse.wst.sse.core.internal.provisional.events.IStructuredDocumentListener; -import org.eclipse.wst.sse.core.internal.provisional.events.NewDocumentEvent; -import org.eclipse.wst.sse.core.internal.provisional.events.NoChangeEvent; -import org.eclipse.wst.sse.core.internal.provisional.events.RegionChangedEvent; -import org.eclipse.wst.sse.core.internal.provisional.events.RegionsReplacedEvent; -import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentEvent; -import org.eclipse.wst.sse.core.internal.provisional.events.StructuredDocumentRegionsReplacedEvent; -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument; -import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion; - - -public final class DTDModelImpl extends AbstractStructuredModel implements IStructuredDocumentListener, DTDModel { - - public static boolean deleteFile(String fileName) { - boolean result = false; - - // create the temp File object - File file = new File(fileName); - if (file.exists()) - result = file.delete(); - return result; - } - - private DTDFile document; - - // private List errorMessages = new ArrayList(); - - // entity reference names found in the conditional IGNORE sections - private Vector ignoredEntityRefs; - - private boolean refreshRequired = false; - - protected DTDReferenceUpdater refUpdater = new DTDReferenceUpdater(); - - public DTDModelImpl() { - super(); - document = new DTDFile(this); - document.addDTDFileListener(new IDTDFileListener() { - - public void nodeChanged(DTDNode node) { - if (node instanceof Entity) { - Entity entity = (Entity) node; - if (entity.isParameterEntity() && entity.isExternalEntity()) { - // just say they have changed for now - setReferencedModelsChanged(); - } - } - } - - public void nodesAdded(NodesEvent event) { - checkIfExternalReferencesChanged(event); - } - - public void nodesRemoved(NodesEvent event) { - checkIfExternalReferencesChanged(event); - } - }); - } - - public void beginRecording(Object requester, String label) { - super.beginRecording(requester, label); - // clear reference updater cache - getReferenceUpdater().clearCache(); - } - - void checkIfExternalReferencesChanged(NodesEvent event) { - Iterator iter = event.getNodes().iterator(); - while (iter.hasNext()) { - DTDNode node = (DTDNode) iter.next(); - if (node instanceof Entity) { - Entity entity = (Entity) node; - if (entity.isParameterEntity() && entity.isExternalEntity()) { - // just say they have changed for now - setReferencedModelsChanged(); - } - } - } - } - - // - // The following function helps determine the list of things that - // can be used in a parameter entity reference content - // Optional parameter is to allow the currently used DTDEntity to - // be included in the combobox. - // - public LabelValuePair[] createParmEntityContentItems(Entity entity) { - NodeList entities = getDTDFile().getEntities(); - - Vector items = new Vector(); - - if (entity != null) { - String name = "%" + entity.getName() + ";"; //$NON-NLS-1$ //$NON-NLS-2$ - items.addElement(new LabelValuePair(name, name)); - } - - for (Iterator i = entities.getNodes().iterator(); i.hasNext();) { - Entity entityAt = (Entity) i.next(); - if (entityAt.isParameterEntity() && entityAt.isExternalEntity()) { - String name = "%" + entityAt.getName() + ";"; //$NON-NLS-1$ //$NON-NLS-2$ - items.addElement(new LabelValuePair(name, name)); - } - } - LabelValuePair[] comboArray = new LabelValuePair[items.size()]; - items.copyInto(comboArray); - return comboArray; - } - - public void endRecording(Object requester) { - super.endRecording(requester); - // clear reference updater cache - getReferenceUpdater().clearCache(); - } - - - public DTDFile getDTDFile() { - return document; - } - - // Returns entity reference names that are in - // the conditional IGNORE sections. - public Vector getIgnoredEntityRefs() { - if (ignoredEntityRefs == null) - ignoredEntityRefs = new Vector(); - return ignoredEntityRefs; - } - - public IndexedRegion getIndexedRegion(int offset) { - if (this.document == null) - return null; - // System.out.println("getNode at " + offset + " returning = " + - // this.document.getNodeAt(offset)); - - return this.document.getNodeAt(offset); - } - - public DTDReferenceUpdater getReferenceUpdater() { - return refUpdater; - } - - public boolean isReferencedModelsChanged() { - return refreshRequired; - } - - public boolean isRefreshRequired() { - return refreshRequired; - } - - public void newModel(NewDocumentEvent flatModelEvent) { - document.newModel(flatModelEvent); - // System.out.println("\nnewmodel"); - outputStructuredDocument(flatModelEvent); - } - - public void noChange(NoChangeEvent flatModelEvent) { - // System.out.println("\nnochange"); - outputStructuredDocument(flatModelEvent); - - } - - public void nodesReplaced(StructuredDocumentRegionsReplacedEvent flatModelEvent) { - // System.out.println("\nnodesreplaced"); - document.nodesReplaced(flatModelEvent); - outputStructuredDocument(flatModelEvent); - - } - - public void outputStructuredDocument(StructuredDocumentEvent flatModelEvent) { - // System.out.println("structuredDocument source = '" + - // flatModelEvent.getStructuredDocument().getText() + "'"); - // System.out.println("new String = '" + - // flatModelEvent.getOriginalChanges() +"'"); - // System.out.println("deleted String = '" + - // flatModelEvent.getDeletedText() +"'"); - // Enumeration e = - // flatModelEvent.getStructuredDocument().getNodes().elements(); - // int i = 0; - // for (; e.hasMoreElements(); i++) - // { - // BasicStructuredDocumentRegion node = - // (BasicStructuredDocumentRegion) e.nextElement(); - // outputStructuredDocumentRegion(node); - // System.out.println(" " + i +". " + node.hashCode() + " '" - // +node.getText() + "'"); - // } - } - - public void outputStructuredDocumentRegion(IStructuredDocumentRegion flatNode) { - // int size = flatNode.getNumberOfRegions(); - // for (int i = 0; i < size; i++) - // { - // Region region = (Region) flatNode.getRegions().get(i); - // System.out.println(i + ". " + region.getType()); - - // } // end of for () - - } - - public void regionChanged(RegionChangedEvent flatModelEvent) { - // System.out.println("\nregion changed"); - document.regionChanged(flatModelEvent); - // System.out.println("= " + - // flatModelEvent.getStructuredDocumentRegion().getText()); - // System.out.println("region changed " + - // flatModelEvent.getRegion().hashCode() + " = " + - // flatModelEvent.getRegion()); - - outputStructuredDocument(flatModelEvent); - } - - public void regionsReplaced(RegionsReplacedEvent flatModelEvent) { - // System.out.println("\nregion replaced"); - document.regionsReplaced(flatModelEvent); - outputStructuredDocument(flatModelEvent); - } - - public void setReferencedModelsChanged() { - refreshRequired = true; - } - - public void setRefreshRequired(boolean value) { - refreshRequired = value; - } - - - /** - * @param newStructuredDocument - * org.eclipse.wst.sse.core.text.IStructuredDocument - */ - public void setStructuredDocument(IStructuredDocument newStructuredDocument) { - IStructuredDocument oldStructuredDocument = super.getStructuredDocument(); - if (newStructuredDocument == oldStructuredDocument) - return; // noting to do - - if (oldStructuredDocument != null) - oldStructuredDocument.removeDocumentChangingListener(this); - super.setStructuredDocument(newStructuredDocument); - if (newStructuredDocument != null) { - if (newStructuredDocument.getLength() > 0) { - newModel(new NewDocumentEvent(newStructuredDocument, this)); - } - newStructuredDocument.addDocumentChangingListener(this); - } - } -} |