deviceupdatesui/deviceupdates/inc/dminforetrieval.h
author hgs
Fri, 23 Jul 2010 16:30:56 +0530
changeset 49 c34c36d1c835
parent 47 d316aecb87fd
permissions -rw-r--r--
201029
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:
47
d316aecb87fd 201025_02
hgs
parents: 36
diff changeset
    41
    DmInfo(DmAdvancedView* serversview=NULL, QGraphicsItem *parent=0);
33
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);      
49
hgs
parents: 47
diff changeset
    47
       bool Isprofilelocked(int profilelistnum);
hgs
parents: 47
diff changeset
    48
       bool Isdefaultprofile(int profilelistnum);
hgs
parents: 47
diff changeset
    49
       bool isProfileDeleteAllowed(int profilelistnum);
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    50
       void profileTransport(int profilelistnum, int& transport);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    51
       TInt DeleteProfile( TInt& aIndex );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    52
       bool createNewprofile();       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    53
       int saveProfile(QStringList& itemdata, bool& sessmode, QString& currap,unsigned int& portnum, bool& nauth );       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    54
       bool getProfiledata(int& itemnum, QStringList& itemdata, bool& sessmode, QStringList& iaplist, int& curriap,  int& portnum, bool& nwauth);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    55
       bool checksrvid(QString& serverid);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    56
       void getIaplist(QStringList& iaplist, int& iapselected, int& listindex);
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    57
       void synchronize(int& itemnum);
47
d316aecb87fd 201025_02
hgs
parents: 36
diff changeset
    58
       void sync(int aProfileId);
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    59
       void synccomplete(int);     
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    60
       /**
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    61
       * Handles DB events
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    62
       * @param aEvent DB event
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    63
       * @return None
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    64
       */
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    65
       void HandleDbEventL( TNSmlDMDbEvent aEvent );
47
d316aecb87fd 201025_02
hgs
parents: 36
diff changeset
    66
       TInt DefaultFotaProfileIdL() const;           
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    67
       void DisableDbNotifications( TBool aEvent );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    68
              
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    69
private:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    70
       void GetProfiles( );
47
d316aecb87fd 201025_02
hgs
parents: 36
diff changeset
    71
       TInt findProfile(TInt aProfileId);
33
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    72
       void OpenSyncSession();
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    73
       void SetDefaultFotaProfileIdL( const TInt aProfileId );
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    74
       
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    75
   public slots:
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
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    80
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    81
   private:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    82
   //Profile list array
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    83
   CArrayFixFlat<TNSmlDMProfileItem>*  iProfileList;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    84
   // Profile list
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    85
   CNSmlDMSyncProfileList*             iSyncProfileList;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    86
   //Application engine
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    87
   CNSmlDMSyncAppEngine*               iAppEngine;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    88
   // DB notifier
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    89
   CNSmlDMDbNotifier*                  iDbNotifier;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    90
   TInt iProfileId;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    91
   // Blocks db events
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    92
   TBool                               iDbEventsBlocked;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    93
   CNSmlDMSyncProfile* iProfile;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    94
   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    95
   QMap<QString,int> iapmap;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    96
   QStringList sortediaplist;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    97
   DmAdvancedView* serversView;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    98
   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
    99
    };
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   100
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   101
// CLASS DECLARATION
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   102
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   103
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   104
/**
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   105
*  TNSmlDMProfileItem helper class
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   106
*/
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   107
NONSHARABLE_CLASS (TNSmlDMProfileItem)
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   108
    {
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   109
    public:
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   110
        TBuf<KNSmlMaxProfileNameLength> iProfileName;   
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   111
        TInt     iProfileId;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   112
        TBool    iSynced;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   113
        TTime    iLastSync;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   114
        TInt     iBearer;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   115
        TInt     iActive;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   116
        TTime    iLastSuccessSync;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   117
        TBool    iDeleteAllowed;
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   118
        TBool    iProfileLocked; 
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   119
    };
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   120
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   121
7464c1e21dae 201008_internal
hgs
parents:
diff changeset
   122
#endif /* DMINFORETRIEVAL_H_ */