Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/contentmodel/HCMDocImpl.java')
-rw-r--r--bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/contentmodel/HCMDocImpl.java93
1 files changed, 93 insertions, 0 deletions
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/contentmodel/HCMDocImpl.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/contentmodel/HCMDocImpl.java
new file mode 100644
index 0000000000..7357b90fec
--- /dev/null
+++ b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/contentmodel/HCMDocImpl.java
@@ -0,0 +1,93 @@
+/*******************************************************************************
+ * Copyright (c) 2004 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.html.core.contentmodel;
+
+
+
+import org.eclipse.wst.common.contentmodel.CMDocument;
+import org.eclipse.wst.common.contentmodel.CMNamedNodeMap;
+import org.eclipse.wst.common.contentmodel.CMNamespace;
+import org.eclipse.wst.common.contentmodel.CMNode;
+
+/**
+ * CMDocument implementation for the HTML.
+ */
+class HCMDocImpl extends CMNodeImpl implements HTMLCMDocument {
+
+ /** Namespace for all names of elements, entities and attributes. */
+ private CMNamespaceImpl namespace = null;
+ private ElementCollection elements = null;
+ private EntityCollection entities = null;
+ private AttributeCollection attributes = null;
+
+ /**
+ */
+ public HCMDocImpl(String docTypeName, CMNamespaceImpl targetNamespace) {
+ super(docTypeName);
+ namespace = targetNamespace;
+ attributes = new AttributeCollection();
+ elements = new ElementCollection(attributes);
+ entities = new EntityCollection();
+ }
+
+ /**
+ * @return com.ibm.sed.contentmodel.html.AttributeCollection
+ */
+ AttributeCollection getAttributes() {
+ return attributes;
+ }
+
+ /**
+ * @see com.ibm.sed.contentmodel.html.HTMLCMDocument
+ */
+ public HTMLElementDeclaration getElementDeclaration(String elementName) {
+ if (elements == null)
+ return null;
+ return (HTMLElementDeclaration) elements.getNamedItem(elementName);
+ }
+
+ /**
+ * @see CMDocument
+ */
+ public CMNamedNodeMap getElements() {
+ return elements;
+ }
+
+ /**
+ * @see CMDocument
+ */
+ public CMNamedNodeMap getEntities() {
+ return entities;
+ }
+
+ /**
+ * @see com.ibm.sed.contentmodel.html.HTMLCMDocument
+ */
+ public HTMLEntityDeclaration getEntityDeclaration(String entityName) {
+ if (entities == null)
+ return null;
+ return (HTMLEntityDeclaration) entities.getNamedItem(entityName);
+ }
+
+ /**
+ * @see CMDocument
+ */
+ public CMNamespace getNamespace() {
+ return namespace;
+ }
+
+ /**
+ * @see CMNode
+ */
+ public int getNodeType() {
+ return CMNode.DOCUMENT;
+ }
+} \ No newline at end of file

Back to the top