1 /* |
1 /* |
2 * Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
37 // CFSMailPluginManager::~CFSMailPluginManager |
37 // CFSMailPluginManager::~CFSMailPluginManager |
38 // ----------------------------------------------------------------------------- |
38 // ----------------------------------------------------------------------------- |
39 CFSMailPluginManager::~CFSMailPluginManager() |
39 CFSMailPluginManager::~CFSMailPluginManager() |
40 { |
40 { |
41 NM_FUNCTION; |
41 NM_FUNCTION; |
42 |
42 |
43 iPluginInfo.ResetAndDestroy(); |
43 iPluginInfo.ResetAndDestroy(); |
44 } |
44 } |
45 |
45 |
46 |
46 |
47 // ----------------------------------------------------------------------------- |
47 // ----------------------------------------------------------------------------- |
48 // CFSMailPluginManager::NewLC |
48 // CFSMailPluginManager::NewLC |
49 // ----------------------------------------------------------------------------- |
49 // ----------------------------------------------------------------------------- |
50 CFSMailPluginManager* CFSMailPluginManager::NewLC(TInt aConfiguration) |
50 CFSMailPluginManager* CFSMailPluginManager::NewLC(TInt aConfiguration) |
51 { |
51 { |
52 NM_FUNCTION; |
52 NM_FUNCTION; |
53 |
53 |
54 CFSMailPluginManager* pluginManager = new (ELeave) CFSMailPluginManager(); |
54 CFSMailPluginManager* pluginManager = new (ELeave) CFSMailPluginManager(); |
55 CleanupStack:: PushL(pluginManager); |
55 CleanupStack:: PushL(pluginManager); |
56 pluginManager->ConstructL(aConfiguration); |
56 pluginManager->ConstructL(aConfiguration); |
57 return pluginManager; |
57 return pluginManager; |
58 } |
58 } |
59 |
59 |
60 // ----------------------------------------------------------------------------- |
60 // ----------------------------------------------------------------------------- |
61 // CFSMailPluginManager::NewL |
61 // CFSMailPluginManager::NewL |
62 // ----------------------------------------------------------------------------- |
62 // ----------------------------------------------------------------------------- |
63 CFSMailPluginManager* CFSMailPluginManager::NewL(TInt aConfiguration) |
63 CFSMailPluginManager* CFSMailPluginManager::NewL(TInt aConfiguration) |
64 { |
64 { |
65 NM_FUNCTION; |
65 NM_FUNCTION; |
66 |
66 |
67 CFSMailPluginManager* pluginManager = CFSMailPluginManager::NewLC(aConfiguration); |
67 CFSMailPluginManager* pluginManager = CFSMailPluginManager::NewLC(aConfiguration); |
68 CleanupStack:: Pop(pluginManager); |
68 CleanupStack:: Pop(pluginManager); |
69 return pluginManager; |
69 return pluginManager; |
70 } |
70 } |
71 |
71 |
79 // list plugin implementations |
79 // list plugin implementations |
80 |
80 |
81 iPluginInfo.Reset(); |
81 iPluginInfo.Reset(); |
82 CFSMailPlugin::ListImplementationsL(iPluginInfo); |
82 CFSMailPlugin::ListImplementationsL(iPluginInfo); |
83 CFSMailPlugin::Close(); |
83 CFSMailPlugin::Close(); |
84 |
84 |
85 // load plugins |
85 // load plugins |
86 CFSMailPlugin* plugin = NULL; |
86 CFSMailPlugin* plugin = NULL; |
87 // <cmail> |
87 // <cmail> |
88 TInt tempCount = iPluginInfo.Count(); |
88 TInt tempCount = iPluginInfo.Count(); |
89 for(TInt i=0;i<tempCount;i++) |
89 for(TInt i=0;i<tempCount;i++) |
90 // </cmail> |
90 // </cmail> |
91 { |
91 { |
92 TUid id = iPluginInfo[i]->ImplementationUid(); |
92 TUid id = iPluginInfo[i]->ImplementationUid(); |
93 if(aConfiguration == EFSLoadPlugins) |
93 if(aConfiguration == EFSLoadPlugins) |
94 { |
94 { |
95 TRAPD(err,plugin = CFSMailPlugin::NewL( id )); |
95 TRAPD(err,plugin = CFSMailPlugin::NewL( id )); |
96 CFSMailPlugin::Close(); |
96 CFSMailPlugin::Close(); |
97 if(err == KErrNone && plugin != NULL) |
97 if(err == KErrNone && plugin) |
98 { |
98 { |
99 AddPluginL(id,plugin); |
99 AddPluginL(id,plugin); |
100 } |
100 } |
101 } |
101 } |
102 // <cmail> |
102 // <cmail> |
103 else |
103 else |
104 { |
104 { |
105 } |
105 } |
106 // </cmail> |
106 // </cmail> |
107 } |
107 } |
108 |
108 |
109 } |
109 } |
110 |
110 |
111 // ----------------------------------------------------------------------------- |
|
112 // CFSMailPluginManager::LoadPluginL |
|
113 // ----------------------------------------------------------------------------- |
|
114 void CFSMailPluginManager::LoadPluginL( TUid /*aPlugin*/ ) |
|
115 { |
|
116 NM_FUNCTION; |
|
117 } |
|
118 |
|
119 // ----------------------------------------------------------------------------- |
111 // ----------------------------------------------------------------------------- |
120 // CFSMailPluginManager::GetPluginByIndex |
112 // CFSMailPluginManager::GetPluginByIndex |
121 // ----------------------------------------------------------------------------- |
113 // ----------------------------------------------------------------------------- |
122 CFSMailPlugin* CFSMailPluginManager::GetPluginByIndex(TUint aIndex) |
114 CFSMailPlugin* CFSMailPluginManager::GetPluginByIndex(TUint aIndex) |
123 { |
115 { |
124 NM_FUNCTION; |
116 NM_FUNCTION; |
125 |
117 |
126 return iPluginList[aIndex]->iPlugin; |
118 return iPluginList[aIndex]->iPlugin; |
127 } |
|
128 |
|
129 // ----------------------------------------------------------------------------- |
|
130 // CFSMailPluginManager::GetPluginIdByIndex |
|
131 // ----------------------------------------------------------------------------- |
|
132 TUid CFSMailPluginManager::GetPluginIdByIndex(TUint aIndex) |
|
133 { |
|
134 NM_FUNCTION; |
|
135 |
|
136 return iPluginList[aIndex]->iPluginId; |
|
137 } |
119 } |
138 |
120 |
139 // ----------------------------------------------------------------------------- |
121 // ----------------------------------------------------------------------------- |
140 // CFSMailPluginManager::GetPluginCount |
122 // CFSMailPluginManager::GetPluginCount |
141 // ----------------------------------------------------------------------------- |
123 // ----------------------------------------------------------------------------- |
142 TUint CFSMailPluginManager::GetPluginCount( ) |
124 TUint CFSMailPluginManager::GetPluginCount( ) |
143 { |
125 { |
144 NM_FUNCTION; |
126 NM_FUNCTION; |
145 |
127 |
146 return iPluginList.Count(); |
128 return iPluginList.Count(); |
147 } |
129 } |
148 |
|
149 |
130 |
150 |
131 |
|
132 |