deviceupdatesui/omadmadapters/connmoadapter/inc/NapBranch.h
changeset 44 137912d1a556
equal deleted inserted replaced
43:88e14c3d4c4f 44:137912d1a556
       
     1 /*
       
     2 * ==============================================================================
       
     3 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
       
     4 * All rights reserved.
       
     5 * This component and the accompanying materials are made available
       
     6 * under the terms of "Eclipse Public License v1.0"
       
     7 * which accompanies this distribution, and is available
       
     8 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     9 *
       
    10 * Initial Contributors:
       
    11 * Nokia Corporation - initial contribution.
       
    12 *
       
    13 * Contributors:
       
    14 * 
       
    15 * Description:
       
    16 *
       
    17 * ==============================================================================
       
    18 */
       
    19 
       
    20 
       
    21 #ifndef NAPBRANCH_H_
       
    22 #define NAPBRANCH_H_
       
    23 
       
    24 // ------------------------------------------------------------------------------------------------
       
    25 // Includes
       
    26 // ------------------------------------------------------------------------------------------------
       
    27 #include <cmmanagerext.h> 
       
    28 #include <smldmadapter.h>
       
    29 #include "BranchBase.h"
       
    30 #include "AddBuffer.h"
       
    31 
       
    32 /**
       
    33  * Class for handling Network Access Point (NAP) settings in ConnMo DM tree
       
    34  */
       
    35 class CNapBranch : public CBranchBase
       
    36     {
       
    37 public:
       
    38 
       
    39     static CNapBranch* NewL(MSmlDmCallback* aDmCallback, 
       
    40                             CAddBuffer* aBuffer,
       
    41                             RCmManagerExt* aCmManagerExt );
       
    42     
       
    43     void DDFStructureL( MSmlDmDDFObject& aDDF );
       
    44     
       
    45     void UpdateLeafObjectL( const TDesC8& aURI, 
       
    46                             const TDesC8& aLUID,
       
    47                             const TDesC8& aObject, 
       
    48                             const TDesC8& aType,
       
    49                             TInt aStatusRef );
       
    50     
       
    51     void DeleteObjectL( const TDesC8& aURI, 
       
    52                         const TDesC8& aLUID,
       
    53                         TInt aStatusRef );
       
    54     
       
    55     void FetchLeafObjectL( const TDesC8& aURI, 
       
    56                            const TDesC8& aLUID,
       
    57                            const TDesC8& aType, 
       
    58                            TInt aResultsRef,
       
    59                            TInt aStatusRef );
       
    60     
       
    61 
       
    62     void FetchLeafObjectSizeL( const TDesC8& aURI, 
       
    63                                const TDesC8& aLUID,
       
    64                                const TDesC8& aType, 
       
    65                                TInt aResultsRef,
       
    66                                TInt aStatusRef );
       
    67 
       
    68     void ChildURIListL( const TDesC8& aURI, 
       
    69                         const TDesC8& aLUID,
       
    70                         const CArrayFix<TSmlDmMappingInfo>& aPreviousURISegmentList,
       
    71                         TInt aResultsRef, 
       
    72                         TInt aStatusRef );
       
    73     
       
    74     void AddNodeObjectL( const TDesC8& aURI, 
       
    75                          const TDesC8& aParentLUID,
       
    76                          TInt aStatusRef);
       
    77     
       
    78     /**
       
    79      * Processes all Proxy related nodes from buffer
       
    80      */
       
    81     void ProcessBufferL();
       
    82 
       
    83     virtual ~CNapBranch(); 
       
    84     
       
    85 private:
       
    86     
       
    87     //-----------------------------------------------------------------------------
       
    88     // Private functions
       
    89     //-----------------------------------------------------------------------------
       
    90     void ConstructL( CAddBuffer* aBuffer, RCmManagerExt* aCmManagerExt );
       
    91     CNapBranch( MSmlDmCallback* aDmCallback );
       
    92     
       
    93     CSmlDmAdapter::TError GetUnmodifiableFieldValueL(const TDesC8& aUri,
       
    94                                                     CBufBase* aResult );
       
    95     
       
    96     CSmlDmAdapter::TError GetLeafDataL(const TDesC8& aURI,
       
    97                                        RCmConnectionMethodExt& aCm,
       
    98                                        CBufBase* aResult );
       
    99     
       
   100     CSmlDmAdapter::TError GetUnmodifiableFieldAddResult( const TDesC8& aUri, 
       
   101                                                          const TDesC8& aObject );
       
   102     
       
   103     TUint32 MapUriToCmAttribute( const TDesC8& aUri );
       
   104     
       
   105     void SetLeafDataL( const TDesC8& aURI, 
       
   106                        const TDesC8& aObject, 
       
   107                        TInt aStatusRef, 
       
   108                        RCmConnectionMethodExt& aCm);
       
   109     
       
   110     void SetNodeDataL( CConnMoNodeElement* aNode, 
       
   111                        RCmConnectionMethodExt& aCm );
       
   112     
       
   113     TBool FindNewCmType( TUint32& aBearerType );
       
   114     
       
   115     TBool AllMandatoryNapFieldsFound();
       
   116     
       
   117     void NapChildURIListL( const TDesC8& aURI,
       
   118                            const CArrayFix<TSmlDmMappingInfo>& aPreviousURISegmentList,
       
   119                            TInt aResultsRef, 
       
   120                            TInt aStatusRef,
       
   121                            CBufBase& aCurrentURISegmentList );
       
   122    
       
   123     void GetAllDynamicNapNodesL( const TDesC8& aURI, 
       
   124                                  const TDesC8& aLUID,
       
   125                                  const CArrayFix<TSmlDmMappingInfo>& aPreviousURISegmentList,
       
   126                                  TInt aResultsRef,
       
   127                                  TInt aStatusRef,
       
   128                                  CBufBase& aCurrentURISegmentList,
       
   129                                  const TDesC8& aField );
       
   130 								 
       
   131     void IpBranchDDFStructureL( MSmlDmDDFObject& aIPDDF );
       
   132     
       
   133     CSmlDmAdapter::TError DeleteObjectL( const TDesC8& aURI, 
       
   134                                          const TDesC8& aLUID );
       
   135     
       
   136     TPtrC8 GetDynamicNAPNodeUri( const TDesC8& aURI );
       
   137     
       
   138     TBool IsNAPUriFormatMatchPredefined(const TDesC8 & aURI);
       
   139     
       
   140     TInt GetCmIdFromURIL(const TDesC8& aURI);
       
   141     //-----------------------------------------------------------------------------
       
   142     // Private member variables
       
   143     //-----------------------------------------------------------------------------
       
   144     CAddBuffer* iBuffer;
       
   145     MSmlDmCallback* iCallback;
       
   146     RCmManagerExt* iCmManager;
       
   147     };
       
   148     
       
   149     
       
   150     
       
   151 #endif /* NAPBRANCH_H_ */