diff -r 000000000000 -r b497e44ab2fc syncmlfw/ds/dsutils/dbcaps/src/NSmlDbMetaHandler.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/syncmlfw/ds/dsutils/dbcaps/src/NSmlDbMetaHandler.cpp Thu Dec 17 09:07:52 2009 +0200 @@ -0,0 +1,281 @@ +/* +* Copyright (c) 2002-2004 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: Source for CNSmlDbMetaHandler class +* +*/ + + +// INCLUDE FILES +#include + +#include +#include "nsmldbcaps.h" +#include "smldevinfdtd.h" +#include "smlmetinfdtd.h" +#include "smldevinftags.h" + + +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::CNSmlDbMetaHandler +// ----------------------------------------------------------------------------- +// +EXPORT_C CNSmlDbMetaHandler::CNSmlDbMetaHandler() : iMetInf(0) + { + //_DBG_FILE("CNSmlDbMetaHandler::CNSmlDbMetaHandler(): begin"); + //_DBG_FILE("CNSmlDbMetaHandler::CNSmlDbMetaHandler(): end"); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::CNSmlDbMetaHandler +// ----------------------------------------------------------------------------- +// +EXPORT_C CNSmlDbMetaHandler::CNSmlDbMetaHandler( sml_metinf_metinf_s* aMetInf ) + : iMetInf(aMetInf) + { + //_DBG_FILE("CNSmlDbMetaHandler::CNSmlDbMetaHandler(): begin"); + //_DBG_FILE("CNSmlDbMetaHandler::CNSmlDbMetaHandler(): end"); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::Format +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::Format() const + { + //_DBG_FILE("CNSmlDbMetaHandler::Format(): begin"); + if( iMetInf && iMetInf->format ) + { + //_DBG_FILE("CNSmlDbMetaHandler::Format(): end"); + return iMetInf->format->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::Format(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::Type +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::Type() const + { + //_DBG_FILE("CNSmlDbMetaHandler::Type(): begin"); + if( iMetInf && iMetInf->type ) + { + //_DBG_FILE("CNSmlDbMetaHandler::Type(): end"); + return iMetInf->type->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::Type(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::Mark +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::Mark() const + { + //_DBG_FILE("CNSmlDbMetaHandler::Mark(): begin"); + if( iMetInf && iMetInf->mark ) + { + //_DBG_FILE("CNSmlDbMetaHandler::Mark(): end"); + return iMetInf->mark->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::Mark(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::Size +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::Size() const + { + //_DBG_FILE("CNSmlDbMetaHandler::Size(): begin"); + if( iMetInf && iMetInf->size ) + { + //_DBG_FILE("CNSmlDbMetaHandler::Size(): end"); + return iMetInf->size->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::Size(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::NextNonce +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::NextNonce() const + { + //_DBG_FILE("CNSmlDbMetaHandler::NextNonce(): begin"); + if( iMetInf && iMetInf->nextnonce ) + { + //_DBG_FILE("CNSmlDbMetaHandler::NextNonce(): end"); + return iMetInf->nextnonce->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::NextNonce(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::Version +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::Version() const + { + //_DBG_FILE("CNSmlDbMetaHandler::Version(): begin"); + if( iMetInf && iMetInf->version ) + { + //_DBG_FILE("CNSmlDbMetaHandler::Version(): end"); + return iMetInf->version->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::Version(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::MaxMsgSize +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::MaxMsgSize() const + { + //_DBG_FILE("CNSmlDbMetaHandler::MaxMsgSize(): begin"); + if( iMetInf && iMetInf->maxmsgsize ) + { + //_DBG_FILE("CNSmlDbMetaHandler::MaxMsgSize(): end"); + return iMetInf->maxmsgsize->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::MaxMsgSize(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::MaxObjSize +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::MaxObjSize() const + { + //_DBG_FILE("CNSmlDbMetaHandler::MaxObjSize(): begin"); + if( iMetInf && iMetInf->maxobjsize ) + { + //_DBG_FILE("CNSmlDbMetaHandler::MaxObjSize(): end"); + return iMetInf->maxobjsize->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::MaxObjSize(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::MemShared +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::MemShared() const + { + //_DBG_FILE("CNSmlDbMetaHandler::MemShared(): begin"); + if( iMetInf && iMetInf->mem && iMetInf->mem->shared ) + { + //_DBG_FILE("CNSmlDbMetaHandler::MemShared(): end"); + return iMetInf->mem->shared->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::MemShared(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::MemFreeMem +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::MemFreeMem() const + { + //_DBG_FILE("CNSmlDbMetaHandler::MemFreeMem(): begin"); + if( iMetInf && iMetInf->mem && iMetInf->mem->free ) + { + //_DBG_FILE("CNSmlDbMetaHandler::MemFreeMem(): end"); + return iMetInf->mem->free->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::MemFreeMem(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::MemFreeID +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::MemFreeID() const + { + //_DBG_FILE("CNSmlDbMetaHandler::MemFreeID(): begin"); + if( iMetInf && iMetInf->mem && iMetInf->mem->freeid ) + { + //_DBG_FILE("CNSmlDbMetaHandler::MemFreeID(): end"); + return iMetInf->mem->freeid->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::MemFreeID(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::AnchorNext +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::AnchorNext() const + { + //_DBG_FILE("CNSmlDbMetaHandler::AnchorNext(): begin"); + if( iMetInf && iMetInf->anchor && iMetInf->anchor->next ) + { + //_DBG_FILE("CNSmlDbMetaHandler::AnchorNext(): end"); + return iMetInf->anchor->next->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::AnchorNext(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::AnchorLast +// ----------------------------------------------------------------------------- +// +EXPORT_C TPtrC8 CNSmlDbMetaHandler::AnchorLast() const + { + //_DBG_FILE("CNSmlDbMetaHandler::AnchorLast(): begin"); + if( iMetInf && iMetInf->anchor && iMetInf->anchor->last ) + { + //_DBG_FILE("CNSmlDbMetaHandler::AnchorLast(): end"); + return iMetInf->anchor->last->Data(); + } + //_DBG_FILE("CNSmlDbMetaHandler::AnchorLast(): end"); + return TPtrC8(); + } + +// ----------------------------------------------------------------------------- +// CNSmlDbMetaHandler::GetEmiL +// ----------------------------------------------------------------------------- +// +EXPORT_C void CNSmlDbMetaHandler::GetEmiL( CDesC8Array& aEMI ) const + { + //_DBG_FILE("CNSmlDbMetaHandler::GetEmiL(): begin"); + aEMI.Reset(); + if( iMetInf ) + { + for( SmlPcdataListPtr_t list = iMetInf->emi; list; list = list->next ) + { + if( list->data ) + { + aEMI.AppendL(list->data->Data()); + } + } + } + //_DBG_FILE("CNSmlDbMetaHandler::GetEmiL(): end"); + } + +// End of File