blob: 933fcb8812f34554da5b17ed0738666afff977ac [file] [log] [blame]
/*
* Copyright (c) 2002 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors:
* IBM - Initial API and implementation
* Jens Lukowski/Innoopract - initial renaming/restructuring
*
*/
package org.eclipse.wst.xml.core.internal.contentmodel.basic;
import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
public class CMDocumentImpl extends CMNodeImpl implements CMDocument
{
protected String targetNamespace;
protected CMNamedNodeMapImpl elements = new CMNamedNodeMapImpl();
protected CMNamedNodeMapImpl localElementPool;
protected CMNamedNodeMapImpl anyElements;
public CMDocumentImpl(String targetNamespace)
{
this.targetNamespace = targetNamespace;
}
public int getNodeType()
{
return DOCUMENT;
}
public String getNodeName()
{
return ""; //$NON-NLS-1$
}
public Object getProperty(String propertyName)
{
Object result = null;
if (propertyName.equals("http://org.eclipse.wst/cm/properties/targetNamespaceURI")) //$NON-NLS-1$
{
result = targetNamespace;
}
else
{
result = super.getProperty(propertyName);
}
return result;
}
public CMNamedNodeMap getElements()
{
return elements;
}
public CMNamedNodeMapImpl getAnyElements()
{
if (anyElements == null)
{
anyElements = new CMNamedNodeMapImpl();
}
return anyElements;
}
public CMNamedNodeMapImpl getLocalElementPool()
{
if (localElementPool == null)
{
localElementPool = new CMNamedNodeMapImpl();
}
return localElementPool;
}
public CMNamedNodeMap getEntities()
{
return new CMNamedNodeMapImpl();
}
public CMNamespace getNamespace()
{
return null;
}
}