GME  13
XSDElementNSImpl.cpp
Go to the documentation of this file.
00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 /*
00019  * $Id: XSDElementNSImpl.cpp 678381 2008-07-21 10:15:01Z borisk $
00020  */
00021 #include <xercesc/util/XMLUniDefs.hpp>
00022 #include <xercesc/dom/DOMException.hpp>
00023 
00024 #include "DOMDocumentImpl.hpp"
00025 #include "XSDElementNSImpl.hpp"
00026 
00027 XERCES_CPP_NAMESPACE_BEGIN
00028 
00029 
00030 XSDElementNSImpl::XSDElementNSImpl(DOMDocument *ownerDoc, const XMLCh *nam) :
00031     DOMElementNSImpl(ownerDoc, nam)
00032     , fLineNo(0)
00033     , fColumnNo(0)
00034 {
00035 }
00036 
00037 //Introduced in DOM Level 2
00038 XSDElementNSImpl::XSDElementNSImpl(DOMDocument *ownerDoc,
00039                                    const XMLCh *namespaceURI,
00040                                    const XMLCh *qualifiedName,
00041                                    const XMLFileLoc lineNo,
00042                                    const XMLFileLoc columnNo) :
00043     DOMElementNSImpl(ownerDoc, namespaceURI, qualifiedName)
00044     , fLineNo(lineNo)
00045     , fColumnNo(columnNo)
00046 {
00047 }
00048 
00049 XSDElementNSImpl::XSDElementNSImpl(const XSDElementNSImpl &other, bool deep) :
00050     DOMElementNSImpl(other, deep)
00051 {
00052     this->fLineNo = other.fLineNo;
00053     this->fColumnNo =other.fColumnNo;
00054 }
00055 
00056 DOMNode * XSDElementNSImpl::cloneNode(bool deep) const {
00057     DOMNode* newNode = new (fParent.fOwnerDocument) XSDElementNSImpl(*this, deep);
00058     fNode.callUserDataHandlers(DOMUserDataHandler::NODE_CLONED, this, newNode);
00059     return newNode;
00060 }
00061 
00062 
00063 XERCES_CPP_NAMESPACE_END