equal
deleted
inserted
replaced
17 |
17 |
18 #include <caentry.h> |
18 #include <caentry.h> |
19 #include "cahandler.h" |
19 #include "cahandler.h" |
20 #include "cahandlerproxy.h" |
20 #include "cahandlerproxy.h" |
21 #include "cahandlerloader.h" |
21 #include "cahandlerloader.h" |
|
22 #include "cainnerentry.h" |
|
23 #include "caobjectadapter.h" |
22 |
24 |
23 /*! |
25 /*! |
24 \class CaHandlerProxy |
26 \class CaHandlerProxy |
25 \ingroup |
27 \ingroup |
26 \brief Forwards execute request to an implemenation provided by specific handler loader. |
28 \brief Forwards execute request to an implemenation provided by specific handler loader. |
27 |
29 |
28 \sa CaHandlerLoader |
30 \sa CaHandlerLoader |
29 */ |
31 */ |
30 |
32 |
58 CaHandler *const handler = getHandler(entry, commandName); |
60 CaHandler *const handler = getHandler(entry, commandName); |
59 |
61 |
60 TInt result = KErrNotFound; |
62 TInt result = KErrNotFound; |
61 |
63 |
62 if (handler != NULL) { |
64 if (handler != NULL) { |
63 result = handler->execute(entry, commandName); |
65 QScopedPointer<CCaInnerEntry> innerEntry(NULL); |
|
66 TRAP(result, |
|
67 innerEntry.reset(CCaInnerEntry::NewL()); |
|
68 CaObjectAdapter::convertL(entry, *innerEntry); |
|
69 ) |
|
70 if (result == KErrNone) { |
|
71 result = handler->execute(*innerEntry, commandName); |
|
72 } |
64 } |
73 } |
65 |
|
66 return result; |
74 return result; |
67 } |
75 } |
68 |
76 |
69 /*! |
77 /*! |
70 Looks for handler implementation in local cache or if not found, request it from |
78 Looks for handler implementation in local cache or if not found, request it from |