author | kashif.sayed |
Fri, 26 Mar 2010 02:10:38 +0530 | |
branch | v5backport |
changeset 27 | 28544f9237c7 |
parent 20 | d2ab7c3d0c48 |
permissions | -rw-r--r-- |
20
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
1 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
2 |
* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
3 |
* All rights reserved. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
8 |
* |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
11 |
* |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
12 |
* Contributors: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
13 |
* |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
14 |
* Description: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
15 |
* Declaration of MActiveBackupDataClient and CActiveBackupClient |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
16 |
* |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
17 |
* |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
18 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
19 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
20 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
21 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
22 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
23 |
@file |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
24 |
@released |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
25 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
26 |
#ifndef __ACTIVEBACKUPCLIENT_H__ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
27 |
#define __ACTIVEBACKUPCLIENT_H__ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
28 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
29 |
#include <e32base.h> |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
30 |
#include <f32file.h> |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
31 |
#include <e32cmn.h> |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
32 |
#include <connect/sbdefs.h> |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
33 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
34 |
namespace conn |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
35 |
{ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
36 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
37 |
class MActiveBackupDataClient |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
38 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
39 |
MActiveBackupDataClient is a Mixin to be implemented by an Active Backup client. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
40 |
The client connects to the Secure Backup Server using the CActiveBackupClient |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
41 |
class and provides an instance of MActiveBackupDataClient to be called for a |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
42 |
range of functions. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
43 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
44 |
The bulk transfer of data and snapshots is expected to be by means of shared |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
45 |
heaps for performance reasons so the API is expected to change in these areas. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
46 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
47 |
@released |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
48 |
@publishedAll |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
49 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
50 |
{ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
51 |
public: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
52 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
53 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
54 |
Empty virtual destructor to avoid memory leaks |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
55 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
56 |
virtual ~MActiveBackupDataClient() {} |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
57 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
58 |
///// Backup Methods ///// |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
59 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
60 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
61 |
This method informs the active backup data client that all snapshots have |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
62 |
been supplied. If the client has not received a snapshot then it should |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
63 |
perform a base backup. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
64 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
65 |
virtual void AllSnapshotsSuppliedL() = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
66 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
67 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
68 |
This method receives all or part of a snapshot of data to allow calculation of an |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
69 |
incremental backup. The snapshot is one that was previously supplied by the data |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
70 |
owner. The snapshot data should be read from the location supplied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
71 |
The snapshot data may be larger than the location supplied in which case the routine will |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
72 |
be called repeatedly until all data has been supplied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
73 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
74 |
Snapshot data will also be supplied as part of a restore operation. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
75 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
76 |
@param aDrive the drive being backed up |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
77 |
@param aBuffer a pointer to the base of the location from whence data can be copied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
78 |
@param aLastSection ETrue if this is the last section of snapshot data, else EFalse. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
79 |
@leave KErrNotSupported if the data owner does not support incremental backups. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
80 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
81 |
virtual void ReceiveSnapshotDataL(TDriveNumber aDrive, TDesC8& aBuffer, TBool aLastSection) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
82 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
83 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
84 |
This method returns the expected size of backup data that will be supplied. If an |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
85 |
incremental backup is underway then this method will not be called until after |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
86 |
ReceiveSnapshotDataL(). The size data will be used for the purpose of tracking progess |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
87 |
during a backup. If it is inaccurate then the user may see irregular progress but the |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
88 |
actual backup data will not be affected so it is acceptable to return an estimated |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
89 |
value. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
90 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
91 |
@param aDrive the drive being backed up. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
92 |
@return the size of the data that will be returned |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
93 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
94 |
virtual TUint GetExpectedDataSize(TDriveNumber aDrive) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
95 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
96 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
97 |
This method returns a snapshot of data to accompany a backup. The snapshot is expected |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
98 |
to contain details on files / data being backed up. The format of the snapshot is only |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
99 |
meaningful to the data owner. The snapshot will be supplied if the data owner is asked |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
100 |
for an incremental backup and for a restore operation. The snapshot data should be |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
101 |
copied to the location supplied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
102 |
The snapshot data may be larger than the location supplied in which case the routine will |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
103 |
be called repeatedly until all data has been retrieved. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
104 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
105 |
@param aDrive the drive being backed up |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
106 |
@param aBuffer a pointer to the base of the location where data can be copied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
107 |
@param aFinished on return ETrue if all data has been returned for this drive, else EFalse. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
108 |
@leave KErrNotSupported if the data owner does not support incremental backups. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
109 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
110 |
virtual void GetSnapshotDataL(TDriveNumber aDrive, TPtr8& aBuffer, TBool& aFinished) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
111 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
112 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
113 |
This method prepares the implementor to return backup data. It will be followed by a |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
114 |
sequence of calls to request the actual data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
115 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
116 |
@param aDrive the drive being backed up. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
117 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
118 |
virtual void InitialiseGetBackupDataL(TDriveNumber aDrive) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
119 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
120 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
121 |
This method requests a section of backup data. InitialiseGetBackupDataL() will have been |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
122 |
called prevously to specify the drive concerned. The data returned may be base or |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
123 |
incremental depending on the type of backup and the capability of the data owner. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
124 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
125 |
@param aBuffer a pointer to the base of the location where data can be copied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
126 |
@param aFinished on return ETrue if all data has been returned for this drive, else EFalse. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
127 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
128 |
virtual void GetBackupDataSectionL(TPtr8& aBuffer, TBool& aFinished) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
129 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
130 |
///// Restore Methods ///// |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
131 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
132 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
133 |
This method prepares the implementor to receive base restore data for a drive. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
134 |
It will be followed by a sequence of calls to supply the actual data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
135 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
136 |
@param aDrive the drive being restored. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
137 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
138 |
virtual void InitialiseRestoreBaseDataL(TDriveNumber aDrive) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
139 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
140 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
141 |
This method receives a section of base restore data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
142 |
InitialiseRestoreBaseDataL() will have been called prevously to specify the drive concerned. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
143 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
144 |
@param aBuffer a pointer to the base of the location whence data can be read. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
145 |
@param aFinished ETrue if all data has been returned for this drive, else EFalse. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
146 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
147 |
virtual void RestoreBaseDataSectionL(TDesC8& aBuffer, TBool aFinished) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
148 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
149 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
150 |
This method prepares the implementor to receive incremental restore data for a drive. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
151 |
It will be followed by a sequence of calls to supply the actual data. If multiple |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
152 |
increments are supplied then this methid will be called before each increment. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
153 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
154 |
@param aDrive the drive being restored. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
155 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
156 |
virtual void InitialiseRestoreIncrementDataL(TDriveNumber aDrive) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
157 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
158 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
159 |
This method receives a section of increment restore data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
160 |
InitialiseRestoreIncrementDataL() will have been called prevously to specify the |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
161 |
drive concerned. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
162 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
163 |
@param aBuffer a pointer to the base of the location whence data can be read. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
164 |
@param aFinished ETrue if all data has been returned for this increment, else EFalse. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
165 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
166 |
virtual void RestoreIncrementDataSectionL(TDesC8& aBuffer, TBool aFinished) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
167 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
168 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
169 |
This method is called when all data to be restored has been supplied. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
170 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
171 |
@param aDrive the drive being restored. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
172 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
173 |
virtual void RestoreComplete(TDriveNumber aDrive) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
174 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
175 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
176 |
This method prepares the implementor to return backup data on behalf of another data owner. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
177 |
It will be followed by a sequence of calls to request the actual data. This method is only |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
178 |
for use by a proxy data manager that backs up data on behalf of other data owners. There |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
179 |
is no corresponding method for snapshots as it is assumed that a proxy data manager will |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
180 |
only handle base data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
181 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
182 |
@param aSID the data owner whose data is to be backed up |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
183 |
@param aDrive the drive being backed up. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
184 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
185 |
virtual void InitialiseGetProxyBackupDataL(TSecureId aSID, TDriveNumber aDrive); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
186 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
187 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
188 |
This method prepares the implementor to receive base restore data for another data owner |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
189 |
for a drive. It will be followed by a sequence of calls to supply the actual data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
190 |
This method is only for use by a proxy data manager that restores up data on behalf of |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
191 |
other data owners. There is no corresponding method for incremental data as it is assumed |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
192 |
that a proxy data manager will only handle base data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
193 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
194 |
@param aSID the data owner whose data is to be restored |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
195 |
@param aDrive the drive being restored. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
196 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
197 |
virtual void InitialiseRestoreProxyBaseDataL(TSecureId aSID, TDriveNumber aDrive); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
198 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
199 |
///// General Methods ///// |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
200 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
201 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
202 |
This method is called if copying of data is terminated prematurely to allow the |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
203 |
implementor to tidy up. The same method applies to all types of data and to backup |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
204 |
and restore |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
205 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
206 |
virtual void TerminateMultiStageOperation() = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
207 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
208 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
209 |
Gets an extended interface based on a supplied uid. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
210 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
211 |
@param aUid Uid which identifies an extended interface |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
212 |
@return Pointer to an extended interface |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
213 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
214 |
virtual TAny* GetExtendedInterface(const TInt32 aUid); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
215 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
216 |
///// Test Methods ///// |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
217 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
218 |
Gets a 32-bit checksum for its private data. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
219 |
This routine is for test purposes. It must be implemented but an invariant checksum |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
220 |
value can be provided. Some tests may cause checksum values to be compared. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
221 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
222 |
@param aDrive the drive containing data being checksummed |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
223 |
@return the 32-bit checksum |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
224 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
225 |
virtual TUint GetDataChecksum(TDriveNumber aDrive) = 0; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
226 |
}; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
227 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
228 |
inline void MActiveBackupDataClient::InitialiseGetProxyBackupDataL(TSecureId /*aSID*/, TDriveNumber /*aDrive*/) |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
229 |
/** Initialises the proxy backup data |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
230 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
231 |
This is not supported here. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
232 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
233 |
@param aSID the secure Id |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
234 |
@param aDrive the driver number |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
235 |
@leave KErrNotSupported Always. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
236 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
237 |
{ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
238 |
User::Leave(KErrNotSupported); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
239 |
} |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
240 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
241 |
inline void MActiveBackupDataClient::InitialiseRestoreProxyBaseDataL(TSecureId /*aSID*/, TDriveNumber /*aDrive*/) |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
242 |
{ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
243 |
/** Initialises the proxy backup base data |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
244 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
245 |
This is not supported here. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
246 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
247 |
@param aSID the secure Id |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
248 |
@param aDrive the driver number |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
249 |
@leave KErrNotSupported Always. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
250 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
251 |
User::Leave(KErrNotSupported); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
252 |
} |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
253 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
254 |
inline TAny* MActiveBackupDataClient::GetExtendedInterface(const TInt32 /*aUid*/) |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
255 |
{ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
256 |
return NULL; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
257 |
} |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
258 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
259 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
260 |
class RABClientSession; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
261 |
class CActiveBackupCallbackHandler; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
262 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
263 |
class CActiveBackupClient : public CBase |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
264 |
/** |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
265 |
CActiveBackupClient provides a connection to the Secure Backup Server for a data owning |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
266 |
process. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
267 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
268 |
It can be used to obtain information about an active backup or restore operation. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
269 |
It can also be used to signal to the Secure Backup Server when the data owner is ready |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
270 |
for backup or restore. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
271 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
272 |
It is also used by data owners that implement active backup or restore to provide a |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
273 |
MActiveBackupDataClient implementation. |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
274 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
275 |
This class owns a RActiveBackupSessionImpl instance and publishes the |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
276 |
public API to the outside world. The reason for this facade class is twofold: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
277 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
278 |
@li Hiding the implementation details of RActiveBackupSessionImpl |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
279 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
280 |
@li Future binary compatibility |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
281 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
282 |
@released |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
283 |
@publishedAll |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
284 |
*/ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
285 |
{ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
286 |
public: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
287 |
IMPORT_C static CActiveBackupClient* NewL(); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
288 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
289 |
IMPORT_C static CActiveBackupClient* NewL(MActiveBackupDataClient* aClient); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
290 |
IMPORT_C ~CActiveBackupClient(); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
291 |
IMPORT_C void BURModeInfoL(TDriveList& aDriveList, TBURPartType& aBackupType, TBackupIncType& aIncBackupType); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
292 |
IMPORT_C TBool DoesPartialBURAffectMeL(); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
293 |
IMPORT_C void ConfirmReadyForBURL(TInt aErrorCode); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
294 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
295 |
private: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
296 |
CActiveBackupClient(); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
297 |
void ConstructL(); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
298 |
void ConstructL(MActiveBackupDataClient* aClient); |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
299 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
300 |
private: |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
301 |
/** Pointer to the client session R class that's wrapped up by this class */ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
302 |
RABClientSession* iClientSession; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
303 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
304 |
/** Pointer to the Active Backup Callback Handler */ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
305 |
CActiveBackupCallbackHandler* iABCallbackHandler; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
306 |
}; |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
307 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
308 |
} // end namespace |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
309 |
|
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
310 |
#endif // __ACTIVEBACKUPCLIENT_H__ |
d2ab7c3d0c48
homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff
changeset
|
311 |