| author | hgs | 
| Tue, 19 Oct 2010 11:30:16 +0530 | |
| changeset 76 | 60a8a215b0ec | 
| parent 37 | 518b245aa84c | 
| permissions | -rw-r--r-- | 
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | /* | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | * All rights reserved. | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | * This component and the accompanying materials are made available | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | * under the terms of "Eclipse Public License v1.0" | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | * which accompanies this distribution, and is available | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | * at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | * | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | * Initial Contributors: | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | * Nokia Corporation - initial contribution. | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | * | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | * Contributors: | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | * | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | * Description: Message Application Launcher interface used for interfacing between | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | * QT highway and other applications | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | * | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | */ | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | //TODO: to be deprecated | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #include "convergedmessageaddress.h" | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | #include "msgserviceinterface.h" | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | #include "msgviewmanager.h" | 
| 37 | 24 | #include "msgcontacthandler.h" | 
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | MsgServiceInterface::MsgServiceInterface(QObject* parent, MsgViewManager* manager) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | :XQServiceProvider( QLatin1String("com.nokia.services.hbserviceprovider.conversationview"),parent),
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | mViewManager(manager) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 |     {
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | publishAll(); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | MsgServiceInterface::~MsgServiceInterface() | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 |     {
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | void MsgServiceInterface::send(const QString phoneNumber, const qint32 contactId, const QString displayName) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 |     {   
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | mViewManager->setServiceRequest(true); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | mViewManager->send(contactId, phoneNumber, displayName); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | |
| 25 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 43 | |
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 44 | void MsgServiceInterface::send(const QString phoneNumber, const QString alias, const QString bodyText) | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 45 |     {   
 | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 46 | mViewManager->setServiceRequest(true); | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 47 | mViewManager->send(phoneNumber, alias, bodyText); | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 48 | } | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 49 | |
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 50 | |
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | void MsgServiceInterface::open(qint64 conversationId) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 |     {
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | mViewManager->setServiceRequest(false); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | mViewManager->open(conversationId); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | void MsgServiceInterface::send(QVariant data) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 |     {   
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | mViewManager->setServiceRequest(true); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | mViewManager->send(data); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 | |
| 25 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 63 | void MsgServiceInterface::view(int msgId) | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 64 |     {   
 | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 65 | mViewManager->view(msgId); | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 66 | } | 
| 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 67 | |
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | void MsgServiceInterface::openConversationView(QString number, QString name) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 |     {
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | mViewManager->setServiceRequest(true); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | QString resolvedName; | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | if(name.isEmpty()) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 |         {
 | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | ConvergedMessageAddress address; | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | address.setAddress(number); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | address.setAlias(name); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | ContactDetail contactDetail; | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | bool ret = resolveContact(address, contactDetail); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | if(ret) | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 |             {
 | 
| 25 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 83 | resolvedName = contactDetail.displayName; | 
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | mViewManager->openEditor(number,resolvedName); | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 | |
| 37 | 89 | bool MsgServiceInterface::resolveContact( | 
| 90 | const ConvergedMessageAddress &address, | |
| 91 | ContactDetail &contactDetail) | |
| 92 | {
 | |
| 93 |     QString displayLabel = QString("");
 | |
| 94 | int count; | |
| 95 | int localId = | |
| 96 | MsgContactHandler::resolveContactDisplayName(address.address(), | |
| 97 | displayLabel, | |
| 98 | count); | |
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 99 | |
| 37 | 100 | if (localId != -1) | 
| 101 |     {
 | |
| 102 | contactDetail.contactId = localId; | |
| 103 | contactDetail.displayName = displayLabel; | |
| 25 
84d9eb65b26f
Revision: 201015
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
23diff
changeset | 104 | return true; | 
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 | } | 
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | |
| 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | return false; | 
| 37 | 108 | } | 
| 23 
238255e8b033
Revision: 201011
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 109 |