diff -r 417699dc19c9 -r c7e9f1c97567 xml/legacyminidomparser/XMLDom/SRC/GMXMLDocument.cpp --- a/xml/legacyminidomparser/XMLDom/SRC/GMXMLDocument.cpp Thu Jul 01 15:13:40 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,238 +0,0 @@ -// Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// MDXMLDocument.CPP -// @file -// This file contains the implementation of the CMDXMLDocument class which -// is the root class for a Mini-DOM tree. -// -// - -#include -#include -#include -#include -#include -#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS -#include "gmxmldummydtd.h" -#endif -// -// Global functions // -// - - -CMDXMLDocument::CMDXMLDocument(MXMLDtd& aDtdRepresentation) : iDtdRepresentation(&aDtdRepresentation) -// -// Constructor -// - { - } - -CMDXMLDocument::CMDXMLDocument() -// -// Constructor -// - { - } - - -EXPORT_C CMDXMLDocument::~CMDXMLDocument() - { - delete iRootElement; - delete iVersionTag; - delete iDocTypeTag; - - if (iOwnsDtd) - // If the DTD is a dummy DTD created by this document then it should be deleted. - { - delete iDtdRepresentation; - } - } - -EXPORT_C CMDXMLDocument* CMDXMLDocument::NewL(MXMLDtd& aDtdRepresentation) -// -// Factory function -// @return Returns the created CMDXMLDocument -// @leave Can Leave due to OOM -// - { - CMDXMLDocument* self = CMDXMLDocument::NewLC(aDtdRepresentation); - CleanupStack::Pop(self); - return self; - } - - -EXPORT_C CMDXMLDocument* CMDXMLDocument::NewLC(MXMLDtd& aDtdRepresentation) -// -// Factory function -// @return Returns the created CMDXMLDocument -// @leave Can Leave due to OOM -// - { - CMDXMLDocument* self = new(ELeave) CMDXMLDocument(aDtdRepresentation); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - -/** - * Factory function - Without taking a DTD - * Documents created using this function will not be able to validate the XML. - * @return Returns the created CMDXMLDocument - * @leave Can Leave due to OOM - */ -EXPORT_C CMDXMLDocument* CMDXMLDocument::NewL() - { - CMDXMLDocument* self = CMDXMLDocument::NewLC(); - CleanupStack::Pop(self); - return self; - } - - -/** - * Factory function - Without taking a DTD - * Documents created using this function will not be able to validate the XML. - * @return Returns the created CMDXMLDocument - * @leave Can Leave due to OOM - */ -EXPORT_C CMDXMLDocument* CMDXMLDocument::NewLC() - { - CMDXMLDocument* self = new(ELeave) CMDXMLDocument(); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - - -void CMDXMLDocument::ConstructL() - { -// Default XML Version & Doc tags being set -// Can be reset externally - iVersionTag = TPtrC(KXMLDefaultVersionTag).AllocL(); - iDocTypeTag = TPtrC(KXMLDefaultDocTypeTag).AllocL(); - - iRootElement = CMDXMLDocumentElement::NewL(this); - - if (iDtdRepresentation == NULL) - // If no DTD has been provided then use the dummy DTD - { - iDtdRepresentation = new (ELeave) CMDXMLDummyDtd; - iOwnsDtd = ETrue; - } - } - - -EXPORT_C TBool CMDXMLDocument::SetVersionTagL(const TDesC& aVersionTag) -// -// @param replacement tag, this must be complete, starting -// @return ETrue if operation succeeds, EFalse if formal parameter does not -// begin with -// @leave can Leave due to OOM -// - { - TBool returnValue = EFalse; - - // if correct tag frame - if(aVersionTag.Left(TPtrC(KXMLVersion).Length()) == KXMLVersion - && aVersionTag.Right(TPtrC(KXMLEndTag).Length()) == KXMLEndTag) - { - delete iVersionTag; - iVersionTag = NULL; - iVersionTag = aVersionTag.AllocL(); - returnValue = ETrue; - } - - return returnValue; - } - -EXPORT_C TBool CMDXMLDocument::SetDocTypeTagL(const TDesC& aDocTypeTag) -// -// @param replacement tag, this must be complete, starting -// @return ETrue if operation succeeds, EFalse if formal parameter does not -// begin with IsValidElementL(aElement); - } - - -EXPORT_C TBool CMDXMLDocument::CanElementHaveChildren(const TDesC& aElement) const - { - return iDtdRepresentation->CanElementHaveChildren(aElement); - } - -EXPORT_C void CMDXMLDocument::PlaceholderForRemovedExport1(MXMLDtd& /*aDtdRepresentation*/) - { - User::Panic(KLDRIMPORT, KLdrImportedOrdinalDoesNotExist); - } - -EXPORT_C void CMDXMLDocument::PlaceholderForRemovedExport2() - { - User::Panic(KLDRIMPORT, KLdrImportedOrdinalDoesNotExist); - } - -const MXMLDtd& CMDXMLDocument::DtdRepresentation() const -// Returns a reference to the dtd class responsible for validation -// @return Returns a reference to MXMLDtd class that should be used for Dtd validation checking - { - return *iDtdRepresentation; - } - - -TBool CMDXMLDummyDtd::IsValidElementL(const TDesC& /*aElement*/) const - { - return ETrue; - } - -TInt CMDXMLDummyDtd::IsValidAttributeForElementL(const TDesC& /*aElement*/, const TDesC& /*aAttribute*/, const TDesC& /*aAttributeValue*/) const - { - return KErrNone; - } - -TBool CMDXMLDummyDtd::AreValidChildElementsL(const TDesC& /*aParentElement*/, const CDesCArray& /*aChildElements*/) const - { - return ETrue; - } - -TBool CMDXMLDummyDtd::CanElementHaveChildren(const TDesC& /*aElement*/) const - { - return ETrue; - } - -// End Of File