|
1 /** @file |
|
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description : Authorization query dialog |
|
15 * |
|
16 */ |
|
17 |
|
18 #ifndef UPNPAUTHORISATIONNOTE_H |
|
19 #define UPNPAUTHORISATIONNOTE_H |
|
20 |
|
21 // INCLUDES |
|
22 #include <e32base.h> // For CActive, link against: euser.lib |
|
23 #include "upnpnotifytimer.h" |
|
24 |
|
25 // FORWARD DECLARATIONS |
|
26 class CAknGlobalNote; |
|
27 // CONSTANTS |
|
28 #define KResourcePath KDC_RESOURCE_FILES_DIR |
|
29 _LIT( KResourceFileName, "upnpnotifier.rsc" ); |
|
30 const TInt KAuthorizationNoteTimeout = 15; |
|
31 |
|
32 // CLASS DECLARATION |
|
33 |
|
34 /** |
|
35 * Observer of CUpnpAuthorizationNote results |
|
36 */ |
|
37 class MUpnpAuthorizationNoteObserver |
|
38 { |
|
39 public: |
|
40 |
|
41 /** |
|
42 * A callback function. |
|
43 * @param aAuthorized The result of authorization. |
|
44 */ |
|
45 virtual void NoteResponseL( TBool aAuthorized ) = 0; |
|
46 }; |
|
47 |
|
48 /** |
|
49 * Active wrapper of CAknGlobalNote YES/NO query dialog |
|
50 */ |
|
51 class CUpnpAuthorizationNote : public CActive, |
|
52 public MUpnpNotifyTimerObserver |
|
53 { |
|
54 public: |
|
55 /** |
|
56 * Destructor. |
|
57 */ |
|
58 ~CUpnpAuthorizationNote(); |
|
59 |
|
60 /** |
|
61 * A two-phased constructor functions. |
|
62 */ |
|
63 static CUpnpAuthorizationNote* NewL(); |
|
64 static CUpnpAuthorizationNote* NewLC(); |
|
65 |
|
66 /** |
|
67 * Creates CAknGlobalNote dialog and performs |
|
68 * ShowNoteL() on it. The dialog is destroyed after user |
|
69 * confirmation or 15 second timeout. |
|
70 * |
|
71 * @param aObserver ShowNoteL results observer |
|
72 */ |
|
73 void ShowNoteL( MUpnpAuthorizationNoteObserver* aObserver ); |
|
74 private: |
|
75 // from MUpnpNotifyTimerObserver |
|
76 virtual void TimerEventL( CUpnpNotifyTimer* aTimer ); |
|
77 // from CActive |
|
78 void RunL(); |
|
79 void DoCancel(); |
|
80 TInt RunError( TInt aError ); |
|
81 // other |
|
82 CUpnpAuthorizationNote(); |
|
83 void ConstructL(); |
|
84 void CancelNoteL(); |
|
85 void GetResourceFilePathLC( RBuf& aPath ); |
|
86 void ReadAuthorisationStringL( const TDesC& aFilename ); |
|
87 private: |
|
88 CUpnpNotifyTimer* iTimer; |
|
89 MUpnpAuthorizationNoteObserver* iObserver; |
|
90 CAknGlobalNote* iNote; |
|
91 TInt iNoteId; |
|
92 HBufC* iAuthorizationString; |
|
93 }; |
|
94 |
|
95 #endif // UPNPAUTHORISATIONNOTE_H |
|
96 // End of File |