deviceupdatesui/deviceupdates/inc/dminforetrieval.h
author hgs
Sun, 21 Mar 2010 15:34:22 +0530
changeset 36 9eefb50e711a
parent 33 7464c1e21dae
child 47 d316aecb87fd
permissions -rw-r--r--
201011
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     1
/*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     2
* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     3
* All rights reserved.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     8
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
     9
* Initial Contributors:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    11
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    12
* Contributors:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    13
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    14
* Description:  Provides methods to retrieve device management
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    15
*               information. 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    16
*
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    17
*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    18
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    19
#ifndef DMINFORETRIEVAL_H_
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    20
#define DMINFORETRIEVAL_H_
36
hgs
parents: 33
diff changeset
    21
#include <qobject.h>
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    22
#include <featmgr.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    23
#include <QGraphicsItem>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    24
#include <e32base.h>
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    25
#include <badesca.h>
36
hgs
parents: 33
diff changeset
    26
#include "nsmldmsyncappengine.h"
hgs
parents: 33
diff changeset
    27
#include "nsmldmsyncprofile.h"
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    28
//#include "NSmlDMSyncProfileItem.h"
36
hgs
parents: 33
diff changeset
    29
#include "nsmldmsyncutil.h"
hgs
parents: 33
diff changeset
    30
#include "nsmldmsyncdebug.h"
hgs
parents: 33
diff changeset
    31
#include "nsmldmsyncprofilelist.h"
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    32
#include "nsmldmdbnotifier.h"
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    33
class DmAdvancedView;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    34
class TNSmlDMProfileItem;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    35
//class CNSmlDMDbNotifier;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    36
class DmInfo: public QObject, public MNSmlDMDbEventHandler
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    37
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    38
    Q_OBJECT
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    39
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    40
   public:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    41
    DmInfo(DmAdvancedView* serversview, QGraphicsItem *parent=0);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    42
       virtual ~DmInfo();   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    43
       void refreshProfileList(TBool aIncludeHidden = ETrue);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    44
       int profilescount();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    45
      int profileinfo(int profilelistnum, QStringList& itemtext, int& icon, bool& lock);       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    46
       void setDefaultProfile(int listitem);      
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    47
       bool Isprofilelocked(int profilelistnum/*, bool& lock*/);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    48
       bool Isdefaultprofile(int profilelistnum/*, bool& defaultprofile*/);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    49
       void profileTransport(int profilelistnum, int& transport);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    50
       TInt DeleteProfile( TInt& aIndex );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    51
       bool createNewprofile();       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    52
       int saveProfile(QStringList& itemdata, bool& sessmode, QString& currap,unsigned int& portnum, bool& nauth );       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    53
       bool getProfiledata(int& itemnum, QStringList& itemdata, bool& sessmode, QStringList& iaplist, int& curriap,  int& portnum, bool& nwauth);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    54
       bool checksrvid(QString& serverid);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    55
       void getIaplist(QStringList& iaplist, int& iapselected, int& listindex);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    56
       void synchronize(int& itemnum);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    57
       void synccomplete(int);     
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    58
       /**
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    59
       * Handles DB events
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    60
       * @param aEvent DB event
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    61
       * @return None
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    62
       */
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    63
       void HandleDbEventL( TNSmlDMDbEvent aEvent );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    64
       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    65
       void DisableDbNotifications( TBool aEvent );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    66
              
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    67
private:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    68
       void GetProfiles( );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    69
       void OpenSyncSession();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    70
       TInt DefaultFotaProfileIdL() const;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    71
       void SetDefaultFotaProfileIdL( const TInt aProfileId );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    72
       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    73
   public slots:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    74
       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    75
      
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    76
       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    77
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    78
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    79
   private:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    80
   //Profile list array
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    81
   CArrayFixFlat<TNSmlDMProfileItem>*  iProfileList;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    82
   // Profile list
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    83
   CNSmlDMSyncProfileList*             iSyncProfileList;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    84
   //Application engine
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    85
   CNSmlDMSyncAppEngine*               iAppEngine;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    86
   // DB notifier
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    87
   CNSmlDMDbNotifier*                  iDbNotifier;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    88
   TInt iProfileId;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    89
   // Blocks db events
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    90
   TBool                               iDbEventsBlocked;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    91
   CNSmlDMSyncProfile* iProfile;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    92
   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    93
   QMap<QString,int> iapmap;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    94
   QStringList sortediaplist;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    95
   DmAdvancedView* serversView;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    96
   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    97
    };
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    98
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    99
// CLASS DECLARATION
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   100
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   101
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   102
/**
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   103
*  TNSmlDMProfileItem helper class
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   104
*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   105
NONSHARABLE_CLASS (TNSmlDMProfileItem)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   106
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   107
    public:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   108
        TBuf<KNSmlMaxProfileNameLength> iProfileName;   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   109
        TInt     iProfileId;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   110
        TBool    iSynced;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   111
        TTime    iLastSync;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   112
        TInt     iBearer;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   113
        TInt     iActive;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   114
        TTime    iLastSuccessSync;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   115
        TBool    iDeleteAllowed;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   116
        TBool    iProfileLocked; 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   117
    };
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   118
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   119
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   120
#endif /* DMINFORETRIEVAL_H_ */