Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java')
-rw-r--r--bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java253
1 files changed, 0 insertions, 253 deletions
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java
deleted file mode 100644
index 18a25419cb..0000000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2007 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.xml.core.internal.contentmodel.util;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class NamespaceTable extends NamespaceAttributeVisitor
-{
- public Hashtable hashtable = new Hashtable();
-
- public NamespaceTable(Document document)
- {
- this();
- //DOMExtension domExtension = DOMExtensionProviderRegistry.getInstance().getDOMExtension(document);
- //if (domExtension != null)
- //{
- // addNamespaceInfoList(domExtension.getImplictNamespaceInfoList(), true);
- // }
- }
-
- private NamespaceTable()
- {
- super();
- }
-
- public boolean isNamespaceEncountered()
- {
- return hashtable.values().size() > 0;
- }
-
- public String getPrefixForURI(String uri)
- {
- String result = null;
- NamespaceInfo entry = getNamespaceInfoForURI(uri, true);
- if (entry != null)
- {
- result = entry.prefix;
- }
- return result;
- }
-
-
- public String getURIForPrefix(String prefix)
- {
- String result = null;
- NamespaceInfo info = getNamespaceInfoForPrefix(prefix);
- if (info != null)
- {
- result = info.uri;
- }
- return result;
- }
-
-
- protected boolean isMatchingString(String a, String b)
- {
- return ((a == null && b == null) || (a != null && b != null && a.equals(b)));
- }
-
-
- public NamespaceInfo getNamespaceInfoForURI(String uri)
- {
- return getNamespaceInfoForURI(uri, false);
- }
-
-
- public NamespaceInfo getNamespaceInfoForURI(String uri, boolean testImplied)
- {
- NamespaceInfo result = null;
- for (Iterator i = hashtable.values().iterator(); i.hasNext(); )
- {
- NamespaceInfo nsInfo = (NamespaceInfo)i.next();
- if (isMatchingString(nsInfo.uri, uri))
- {
- result = nsInfo;
- if (testImplied && nsInfo.getProperty("isImplied") != null) //$NON-NLS-1$
- {
- // continue
- }
- else
- {
- break;
- }
- }
- }
- return result;
- }
-
-
- public void setLocationHintForURI(String uri, String locationHint)
- {
- // List list = new Vector();
- for (Iterator i = hashtable.values().iterator(); i.hasNext(); )
- {
- NamespaceInfo nsInfo = (NamespaceInfo)i.next();
- if (isMatchingString(nsInfo.uri, uri))
- {
- nsInfo.locationHint = locationHint;
- }
- }
- }
-
-
- public NamespaceInfo getNamespaceInfoForPrefix(String prefix)
- {
- prefix = prefix != null ? prefix : ""; //$NON-NLS-1$
- return (NamespaceInfo)hashtable.get(prefix);
- }
-
-
- public void visitXMLNamespaceAttribute(Attr attr, String namespacePrefix, String namespaceURI)
- {
- NamespaceInfo nsInfo = new NamespaceInfo();
- nsInfo.prefix = namespacePrefix;
- nsInfo.uri = namespaceURI;
-
- NamespaceInfo matchingNamespaceInfo = getNamespaceInfoForURI(namespaceURI);
- if (matchingNamespaceInfo != null)
- {
- nsInfo.locationHint = matchingNamespaceInfo.locationHint;
- }
-
- internalAddNamespaceInfo(namespacePrefix, nsInfo);
-
- super.visitXMLNamespaceAttribute(attr, namespacePrefix, namespaceURI);
- }
-
- public void visitXSISchemaLocationValuePair(String uri, String locationHint)
- {
- setLocationHintForURI(uri, locationHint);
- }
-
- public void addNamespaceInfo(NamespaceInfo info)
- {
- String key = (info.prefix != null) ? info.prefix : ""; //$NON-NLS-1$
- internalAddNamespaceInfo(key, info);
- }
-
- protected void internalAddNamespaceInfo(String key, NamespaceInfo info)
- {
- hashtable.put(key, info);
- }
-
- protected void addNamespaceInfoList(List list, boolean isImplied)
- {
- if (list != null)
- {
- for (Iterator i = list.iterator(); i.hasNext(); )
- {
- NamespaceInfo info = (NamespaceInfo)i.next();
- NamespaceInfo clone = new NamespaceInfo(info);
- if (isImplied)
- {
- clone.setProperty("isImplied", "true"); //$NON-NLS-1$ //$NON-NLS-2$
- }
- addNamespaceInfo(clone);
- }
- }
- }
-
- public void addNamespaceInfoList(List list)
- {
- addNamespaceInfoList(list, false);
- }
-
- public void visitXSINoNamespaceSchemaLocationAttribute(Attr attr, String locationHint)
- {
- addNoNamespaceSchemaLocation(locationHint);
- }
-
- public void addNoNamespaceSchemaLocation(String locationHint)
- {
- NamespaceInfo nsInfo = new NamespaceInfo();
- nsInfo.prefix = null;
- nsInfo.uri = ""; //$NON-NLS-1$
- nsInfo.locationHint = locationHint;
- internalAddNamespaceInfo("", nsInfo); //$NON-NLS-1$
- }
-
- public void addNamespaceInfo(String prefix, String uri, String locationHint)
- {
- NamespaceInfo nsInfo = new NamespaceInfo();
- nsInfo.prefix = prefix;
- nsInfo.uri = uri;
- nsInfo.locationHint = locationHint;
- internalAddNamespaceInfo(prefix != null ? prefix : "", nsInfo); //$NON-NLS-1$
- }
-
- public void addElement(Element element)
- {
- visitElement(element);
- }
-
- public void addElementLineage(Element targetElement)
- {
- List list = NamespaceTable.getElementLineage(targetElement);
- for (Iterator i = list.iterator(); i.hasNext(); )
- {
- Element element = (Element)i.next();
- addElement(element);
- }
- }
-
- public static List getElementLineage(Element element)
- {
- List result = new ArrayList();
- for (Node node = element; node != null; node = node.getParentNode())
- {
- if (node.getNodeType() == Node.ELEMENT_NODE)
- {
- result.add(0, node);
- }
- else
- {
- break;
- }
- }
- return result;
- }
-
- public Collection getNamespaceInfoCollection()
- {
- return hashtable.values();
- }
-
- public List getNamespaceInfoList()
- {
- List list = new Vector();
- list.addAll(hashtable.values());
- return list;
- }
-}

Back to the top