author | Maciej Seroka <maciejs@symbian.org> |
Wed, 03 Mar 2010 15:01:24 +0000 | |
branch | Symbian3 |
changeset 16 | 91c05f5f5178 |
parent 6 | c108117318cb |
child 57 | b8d18c84f71c |
permissions | -rw-r--r-- |
1
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
1 |
/* |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
2 |
* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
3 |
* All rights reserved. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
6 | 5 |
* under the terms of the License "Eclipse Public License v1.0" |
1
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
6 | 7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
1
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
8 |
* |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
11 |
* |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
12 |
* Contributors: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
13 |
* |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
14 |
* Description: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
15 |
* |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
16 |
*/ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
17 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
18 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
19 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
20 |
#ifndef __APFMIMECONTENTPOLICY_H__ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
21 |
#define __APFMIMECONTENTPOLICY_H__ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
22 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
23 |
#include <e32base.h> |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
24 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
25 |
class CApfMimeContentPolicyImpl; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
26 |
class RFile; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
27 |
class RFs; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
28 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
29 |
/** |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
30 |
CApfMimeContentPolicy is utility class for checking MIME types and |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
31 |
file extensions against closed content list. It also provides a function |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
32 |
for checking if a given file is a DRM envelope, and a convinience function |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
33 |
which combines all the checks mentioned above. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
34 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
35 |
Usage: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
36 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
37 |
@code |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
38 |
TFileName fileName = <name of the file to be checked> |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
39 |
TUid uid; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
40 |
TDataType recData; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
41 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
42 |
CApfMimeContentPolicy *ccp = CApfMimeContentPolicy::NewLC(); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
43 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
44 |
if (ccp->IsDRMEnvelope( fileName )) |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
45 |
{ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
46 |
// Whatever needs to be done if file is DRM envelope. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
47 |
} |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
48 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
49 |
// Check file extension. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
50 |
TParse parser; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
51 |
parser.Set(fileName, NULL, NULL); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
52 |
if (IsClosedExtension(parser.Ext())) |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
53 |
{ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
54 |
// Do what needs to be done if closed content. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
55 |
} |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
56 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
57 |
iLs.AppForDocument(fileName, uid, recData); // Get MIME type for file. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
58 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
59 |
if (ccp->IsClosedType(recData.Des()) // Check if this mime type is closed. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
60 |
{ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
61 |
// Whatever needs to be done if type is closed. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
62 |
} |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
63 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
64 |
// Or you can achieve same result calling a convinience function |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
65 |
// which combines all the steps above: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
66 |
if (cpp->IsClosedFileL( fileName ); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
67 |
{ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
68 |
// Do whatever has to be done if file is closed. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
69 |
} |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
70 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
71 |
// Don't forget to clean up. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
72 |
CleanupStack::PopAndDestroy(); // ccp |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
73 |
@endcode |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
74 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
75 |
@publishedPartner |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
76 |
@released |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
77 |
*/ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
78 |
class CApfMimeContentPolicy : public CBase |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
79 |
{ |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
80 |
public: // Constructors and destructor |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
81 |
IMPORT_C static CApfMimeContentPolicy* NewL(); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
82 |
IMPORT_C static CApfMimeContentPolicy* NewLC(); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
83 |
IMPORT_C static CApfMimeContentPolicy* NewL(RFs& aFs); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
84 |
IMPORT_C static CApfMimeContentPolicy* NewLC(RFs& aFs); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
85 |
IMPORT_C ~CApfMimeContentPolicy(); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
86 |
public: // New functions |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
87 |
IMPORT_C TBool IsClosedType(const TDesC& aMimeType); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
88 |
IMPORT_C TBool IsClosedExtension(const TDesC& aFileExtension); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
89 |
IMPORT_C TBool IsClosedFileL(const TDesC& aFileName); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
90 |
IMPORT_C TBool IsDRMEnvelopeL(const TDesC& aFileName); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
91 |
IMPORT_C TBool IsClosedFileL(RFile& aFileHandle); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
92 |
IMPORT_C TBool IsDRMEnvelopeL(RFile& aFileHandle); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
93 |
private: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
94 |
CApfMimeContentPolicy(); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
95 |
void ConstructL(); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
96 |
void ConstructL(RFs& aFs); |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
97 |
private: |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
98 |
CApfMimeContentPolicyImpl* iImpl; // Implementation. |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
99 |
}; |
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
100 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
101 |
|
8758140453c0
Added Symbian2 smoketests from FBF at changeset bde28f2b1d99
Maciej Seroka <maciejs@symbian.org>
parents:
diff
changeset
|
102 |
#endif // __APFMIMECONTENTPOLICY_H__ |