--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/omadm/omadmextensions/adapters/connmoadapter/inc/NapBranch.h Thu Jan 07 12:39:15 2010 +0200
@@ -0,0 +1,151 @@
+/*
+* ==============================================================================
+* Copyright (c) 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:
+*
+* ==============================================================================
+*/
+
+
+#ifndef NAPBRANCH_H_
+#define NAPBRANCH_H_
+
+// ------------------------------------------------------------------------------------------------
+// Includes
+// ------------------------------------------------------------------------------------------------
+#include <cmmanagerext.h>
+#include <smldmadapter.h>
+#include "BranchBase.h"
+#include "AddBuffer.h"
+
+/**
+ * Class for handling Network Access Point (NAP) settings in ConnMo DM tree
+ */
+class CNapBranch : public CBranchBase
+ {
+public:
+
+ static CNapBranch* NewL(MSmlDmCallback* aDmCallback,
+ CAddBuffer* aBuffer,
+ RCmManagerExt* aCmManagerExt );
+
+ void DDFStructureL( MSmlDmDDFObject& aDDF );
+
+ void UpdateLeafObjectL( const TDesC8& aURI,
+ const TDesC8& aLUID,
+ const TDesC8& aObject,
+ const TDesC8& aType,
+ TInt aStatusRef );
+
+ void DeleteObjectL( const TDesC8& aURI,
+ const TDesC8& aLUID,
+ TInt aStatusRef );
+
+ void FetchLeafObjectL( const TDesC8& aURI,
+ const TDesC8& aLUID,
+ const TDesC8& aType,
+ TInt aResultsRef,
+ TInt aStatusRef );
+
+
+ void FetchLeafObjectSizeL( const TDesC8& aURI,
+ const TDesC8& aLUID,
+ const TDesC8& aType,
+ TInt aResultsRef,
+ TInt aStatusRef );
+
+ void ChildURIListL( const TDesC8& aURI,
+ const TDesC8& aLUID,
+ const CArrayFix<TSmlDmMappingInfo>& aPreviousURISegmentList,
+ TInt aResultsRef,
+ TInt aStatusRef );
+
+ void AddNodeObjectL( const TDesC8& aURI,
+ const TDesC8& aParentLUID,
+ TInt aStatusRef);
+
+ /**
+ * Processes all Proxy related nodes from buffer
+ */
+ void ProcessBufferL();
+
+ virtual ~CNapBranch();
+
+private:
+
+ //-----------------------------------------------------------------------------
+ // Private functions
+ //-----------------------------------------------------------------------------
+ void ConstructL( CAddBuffer* aBuffer, RCmManagerExt* aCmManagerExt );
+ CNapBranch( MSmlDmCallback* aDmCallback );
+
+ CSmlDmAdapter::TError GetUnmodifiableFieldValueL(const TDesC8& aUri,
+ CBufBase* aResult );
+
+ CSmlDmAdapter::TError GetLeafDataL(const TDesC8& aURI,
+ RCmConnectionMethodExt& aCm,
+ CBufBase* aResult );
+
+ CSmlDmAdapter::TError GetUnmodifiableFieldAddResult( const TDesC8& aUri,
+ const TDesC8& aObject );
+
+ TUint32 MapUriToCmAttribute( const TDesC8& aUri );
+
+ void SetLeafDataL( const TDesC8& aURI,
+ const TDesC8& aObject,
+ TInt aStatusRef,
+ RCmConnectionMethodExt& aCm);
+
+ void SetNodeDataL( CConnMoNodeElement* aNode,
+ RCmConnectionMethodExt& aCm );
+
+ TBool FindNewCmType( TUint32& aBearerType );
+
+ TBool AllMandatoryNapFieldsFound();
+
+ void NapChildURIListL( const TDesC8& aURI,
+ const CArrayFix<TSmlDmMappingInfo>& aPreviousURISegmentList,
+ TInt aResultsRef,
+ TInt aStatusRef,
+ CBufBase& aCurrentURISegmentList );
+
+ void GetAllDynamicNapNodesL( const TDesC8& aURI,
+ const TDesC8& aLUID,
+ const CArrayFix<TSmlDmMappingInfo>& aPreviousURISegmentList,
+ TInt aResultsRef,
+ TInt aStatusRef,
+ CBufBase& aCurrentURISegmentList,
+ const TDesC8& aField );
+
+ void IpBranchDDFStructureL( MSmlDmDDFObject& aIPDDF );
+
+ CSmlDmAdapter::TError DeleteObjectL( const TDesC8& aURI,
+ const TDesC8& aLUID );
+
+ TPtrC8 GetDynamicNAPNodeUri( const TDesC8& aURI );
+
+ TBool IsNAPUriFormatMatchPredefined(const TDesC8 & aURI);
+
+ TInt GetCmIdFromURIL(const TDesC8& aURI);
+ //-----------------------------------------------------------------------------
+ // Private member variables
+ //-----------------------------------------------------------------------------
+ CAddBuffer* iBuffer;
+ MSmlDmCallback* iCallback;
+ RCmManagerExt* iCmManager;
+ };
+
+
+
+#endif /* NAPBRANCH_H_ */