summaryrefslogtreecommitdiffabout
authorulf69 <ulf69>2004-10-07 01:04:18 (UTC)
committer ulf69 <ulf69>2004-10-07 01:04:18 (UTC)
commit0406c1ac252f2fa631f7a486e73b0a97d09874f9 (patch) (side-by-side diff)
tree72de99490603b5913a39a101ef571ba74acd6798
parent0afcfa29ace7bc5e42a11fae44301e1e8230a376 (diff)
downloadkdepimpi-0406c1ac252f2fa631f7a486e73b0a97d09874f9.zip
kdepimpi-0406c1ac252f2fa631f7a486e73b0a97d09874f9.tar.gz
kdepimpi-0406c1ac252f2fa631f7a486e73b0a97d09874f9.tar.bz2
added functionality for Birthdaylookup from kopi via qCop
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libkdepim/externalapphandler.cpp68
-rw-r--r--libkdepim/externalapphandler.h32
2 files changed, 86 insertions, 14 deletions
diff --git a/libkdepim/externalapphandler.cpp b/libkdepim/externalapphandler.cpp
index 99aee86..07bdff2 100644
--- a/libkdepim/externalapphandler.cpp
+++ b/libkdepim/externalapphandler.cpp
@@ -256,23 +256,27 @@ QCopListTransferItem::QCopListTransferItem(int usedSourceParameters, const QStri
: QCopTransferItem(usedSourceParameters, sourceMessage, targetChannel,targetMessage)
{
//targetMessage returns later two parameters: uid, and three lists
- _targetMessageParameters = "(QString,QStringList,QStringList,QStringList)";
+ _targetMessageParameters = "(QString,QStringList,QStringList,QStringList,QStringList,QStringList,QStringList)";
}
/*********************************************************************************/
-bool QCopListTransferItem::sendMessageToSource(const QString& uid, const QStringList& list1, const QStringList& list2, const QStringList& list3)
+bool QCopListTransferItem::sendMessageToSource(const QString& uid, const QStringList& list1, const QStringList& list2, const QStringList& list3, const QStringList& list4, const QStringList& list5, const QStringList& list6)
{
#ifndef DESKTOP_VERSION
//targetMessage passes two parameters: uid, map
QString targetMessage = _targetMessage + _targetMessageParameters;
qDebug("3Using QCopEnvelope e(\"%s\",\"%s\")", _sourceChannel.latin1(), targetMessage.latin1());
- qDebug("passing uid(%s) and list1, list2, list3 as parameter to QCopEnvelope", uid.latin1());
+ qDebug("passing uid(%s) and list1, list2, list3, list4, list5, list6 as parameter to QCopEnvelope", uid.latin1());
+
+
+ for ( int i = 0; i < list3.count(); i++)
+ qDebug("listentry list3: %s",list3[i].latin1());
QCopEnvelope e(_sourceChannel.latin1(), targetMessage.latin1());
//US we need no names in the To field. The emailadresses are enough
- e << uid << list1 << list2 << list3;
+ e << uid << list1 << list2 << list3 << list4 << list5 << list6;
qApp->processEvents();
@@ -304,10 +308,15 @@ bool QCopListTransferItem::appMessage( const QCString& cmsg, const QByteArray& d
QStringList list1;
QStringList list2;
QStringList list3;
+ QStringList list4;
+ QStringList list5;
+ QStringList list6;
QString uid;
- stream >> uid >> list1 >> list2 >> list3;
- emit receivedMessageFromTarget(uid, list1, list2, list3);
+ qDebug("3QCopListTransferItem- QCOP message received: %s ", cmsg.data() );
+
+ stream >> uid >> list1 >> list2 >> list3 >> list4 >> list5 >> list6;
+ emit receivedMessageFromTarget(uid, list1, list2, list3, list4, list5, list6);
return true;
@@ -333,7 +342,7 @@ ExternalAppHandler::ExternalAppHandler()
mNameEmailUidListFromKAPITransfer = new QCopListTransferItem(0, "requestNameEmailUIDListFromKAPI", "QPE/Application/kapi", "receiveNameEmailUIDList");
connect(mNameEmailUidListFromKAPITransfer, SIGNAL (receivedMessageFromSource(const QString&, const QString&)), this, SIGNAL (requestForNameEmailUidList(const QString&, const QString&)));
- connect(mNameEmailUidListFromKAPITransfer, SIGNAL (receivedMessageFromTarget(const QString&, const QStringList&, const QStringList&, const QStringList&)), this, SIGNAL (receivedNameEmailUidListEvent(const QString&, const QStringList&, const QStringList&, const QStringList&)));
+ connect(mNameEmailUidListFromKAPITransfer, SIGNAL (receivedMessageFromTarget(const QString&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&)), this, SLOT (receivedNameEmailUidList_Slot(const QString&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&)));
//US mFindByEmailFromKAPITransfer = new QCopListTransferItem(1, "requestFindByEmailFromKAPI", "QPE/Application/kapi", "receiveFindByEmailNameEmailUIDList");
//US connect(mFindByEmailFromKAPITransfer, SIGNAL (receivedMessageFromSource(const QString&, const QString&, const QString&)), this, SIGNAL (requestForFindByEmail(const QString&, const QString&, const QString&)));
@@ -341,12 +350,33 @@ ExternalAppHandler::ExternalAppHandler()
mDisplayDetails = new QCopListTransferItem(3, "requestDisplayDetailsFromKAPI", "QPE/Application/kapi", "");
connect(mDisplayDetails, SIGNAL (receivedMessageFromSource(const QString&, const QString&, const QString&, const QString&, const QString&)), this, SIGNAL (requestForDetails(const QString&, const QString&, const QString&, const QString&, const QString&)));
+
+
+
+ mBirthdayListFromKAPITransfer = new QCopListTransferItem(0, "requestBirthdayListFromKAPI", "QPE/Application/kapi", "receiveBirthdayList");
+ connect(mBirthdayListFromKAPITransfer, SIGNAL (receivedMessageFromSource(const QString&, const QString&)), this, SIGNAL (requestForBirthdayList(const QString&, const QString&)));
+ connect(mBirthdayListFromKAPITransfer, SIGNAL (receivedMessageFromTarget(const QString&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&)), this, SIGNAL (receivedBirthdayListEvent(const QString&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&, const QStringList&)));
+
+
}
ExternalAppHandler::~ExternalAppHandler()
{
}
+void ExternalAppHandler::receivedNameEmailUidList_Slot(const QString& uid,
+ const QStringList& nameList,
+ const QStringList& emailList,
+ const QStringList& uidList,
+ const QStringList&,
+ const QStringList&,
+ const QStringList& )
+{
+ // this method is a conevnient way to reduce the number of parameters I have to pass
+ emit receivedNameEmailUidListEvent(uid, nameList, emailList, uidList);
+}
+
+
void ExternalAppHandler::loadConfig()
{
@@ -1049,6 +1079,9 @@ void ExternalAppHandler::appMessage( const QCString& cmsg, const QByteArray& dat
{
bool res = mNameEmailUidListFromKAPITransfer->appMessage( cmsg, data );
if (!res)
+ res = mBirthdayListFromKAPITransfer->appMessage( cmsg, data );
+
+ if (!res)
res = mDisplayDetails->appMessage( cmsg, data );
// if (!res)
@@ -1065,9 +1098,10 @@ bool ExternalAppHandler::requestNameEmailUidListFromKAPI(const QString& sourceCh
bool ExternalAppHandler::returnNameEmailUidListFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QStringList& list1, const QStringList& list2, const QStringList& list3)
{
-
+ QStringList list4, list5, list6;
+
mNameEmailUidListFromKAPITransfer->setSourceChannel(sourceChannel);
- return mNameEmailUidListFromKAPITransfer->sendMessageToSource(sessionuid, list1, list2, list3);
+ return mNameEmailUidListFromKAPITransfer->sendMessageToSource(sessionuid, list1, list2, list3, list4, list5, list6);
}
bool ExternalAppHandler::requestFindByEmailFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QString& email)
@@ -1078,8 +1112,10 @@ bool ExternalAppHandler::requestFindByEmailFromKAPI(const QString& sourceChannel
bool ExternalAppHandler::returnFindByEmailFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QStringList& list1, const QStringList& list2, const QStringList& list3)
{
+ QStringList list4, list5, list6;
+
mFindByEmailFromKAPITransfer->setSourceChannel(sourceChannel);
- return mFindByEmailFromKAPITransfer->sendMessageToSource(sessionuid, list1, list2, list3);
+ return mFindByEmailFromKAPITransfer->sendMessageToSource(sessionuid, list1, list2, list3, list4, list5, list6);
}
bool ExternalAppHandler::requestDetailsFromKAPI(const QString& name, const QString& email, const QString& uid)
@@ -1088,6 +1124,18 @@ bool ExternalAppHandler::requestDetailsFromKAPI(const QString& name, const QStri
return mDisplayDetails->sendMessageToTarget("", name, email, uid);
}
+bool ExternalAppHandler::requestBirthdayListFromKAPI(const QString& sourceChannel, const QString& sessionuid)
+{
+ mBirthdayListFromKAPITransfer->setSourceChannel(sourceChannel);
+ return mBirthdayListFromKAPITransfer->sendMessageToTarget(sessionuid);
+}
+
+bool ExternalAppHandler::returnBirthdayListFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QStringList& list1, const QStringList& list2, const QStringList& list3, const QStringList& list4, const QStringList& list5, const QStringList& list6)
+{
+ mBirthdayListFromKAPITransfer->setSourceChannel(sourceChannel);
+ return mBirthdayListFromKAPITransfer->sendMessageToSource(sessionuid, list1, list2, list3, list4, list5, list6);
+}
+
diff --git a/libkdepim/externalapphandler.h b/libkdepim/externalapphandler.h
index cfe577b..4c6f1ea 100644
--- a/libkdepim/externalapphandler.h
+++ b/libkdepim/externalapphandler.h
@@ -59,7 +59,6 @@ class QCopTransferItem : public QObject
void receivedMessageFromSource(const QString& sourceChannel, const QString& uid, const QString& param1, const QString& param2);
void receivedMessageFromSource(const QString& sourceChannel, const QString& uid, const QString& param1, const QString& param2, const QString& param3);
-
public:
int _usedSourceParameters;
QString _sourceChannel;
@@ -102,14 +101,14 @@ class QCopListTransferItem : public QCopTransferItem
public:
QCopListTransferItem(int usedSourceParameters, const QString& sourceMessage, const QString& targetChannel, const QString& targetMessage);
- bool sendMessageToSource(const QString& uid, const QStringList& list1, const QStringList& list2, const QStringList& list3);
+ bool sendMessageToSource(const QString& uid, const QStringList& list1, const QStringList& list2, const QStringList& list3, const QStringList& list4, const QStringList& list5, const QStringList& list6);
virtual bool appMessage( const QCString& msg, const QByteArray& data );
signals:
- void receivedMessageFromTarget(const QString& uid, const QStringList& list1, const QStringList& list2, const QStringList& list3);
+ void receivedMessageFromTarget(const QString& uid, const QStringList& list1, const QStringList& list2, const QStringList& list3, const QStringList& list4 , const QStringList& list5, const QStringList& list6);
};
@@ -207,12 +206,22 @@ class ExternalAppHandler : public QObject
//Call this method on the target when you want to return the name/email map to the source (client).
bool returnNameEmailUidListFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QStringList& name, const QStringList& email, const QStringList& uid);
+
+
bool requestFindByEmailFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QString& email);
bool returnFindByEmailFromKAPI(const QString& sourceChannel, const QString& sessionuid, const QStringList& name, const QStringList& email, const QStringList& uid);
bool requestDetailsFromKAPI(const QString& name, const QString& email, const QString& uid);
+
+ bool requestBirthdayListFromKAPI(const QString& sourceChannel, const QString& sessionuid);
+ bool returnBirthdayListFromKAPI(const QString& sourceChannel, const QString& sessionuid,
+ const QStringList& birthdayList, const QStringList& anniversaryList,
+ const QStringList& realNameList, const QStringList& emailList,
+ const QStringList& assembledNameList, const QStringList& uidList);
+
+
//loadConfig clears the cache and checks again if the applications are available or not
void loadConfig();
@@ -232,11 +241,22 @@ class ExternalAppHandler : public QObject
void receivedNameEmailUidListEvent(const QString& uid, const QStringList& nameList, const QStringList& emailList, const QStringList& uidList);
void requestFindByEmail(const QString& sourceChannel, const QString& uid, const QString& email);
- void receivedFindBbyEmailEvent(const QString& uid, const QStringList& nameList, const QStringList& emailList, const QStringList& uidList);
+ void receivedFindByEmailEvent(const QString& uid, const QStringList& nameList, const QStringList& emailList, const QStringList& uidList);
void requestForDetails(const QString& sourceChannel, const QString& sessionuid, const QString& name, const QString& email, const QString& uid);
+ // Emmitted when the target app receives a request from the source app
+ void requestForBirthdayList(const QString& sourceChannel, const QString& uid);
+
+ // Emitted when the source app recieves a list of name/email pairs (=addresses) from another target app. Usually Ka/Pi
+ // The first parameter is a uniqueid. It can be used to identify the event
+ void receivedBirthdayListEvent(const QString& uid, const QStringList& birthdayList,
+ const QStringList& anniversaryList, const QStringList& realNameList,
+ const QStringList& emailList, const QStringList& assembledNameList,
+ const QStringList& uidList);
+
+
private:
ExternalAppHandler();
QList<DefaultAppItem> mDefaultItems;
@@ -251,6 +271,7 @@ class ExternalAppHandler : public QObject
QCopListTransferItem* mNameEmailUidListFromKAPITransfer;
QCopListTransferItem* mFindByEmailFromKAPITransfer;
QCopTransferItem* mDisplayDetails;
+ QCopListTransferItem* mBirthdayListFromKAPITransfer;
void addDefaultAppItem(Types type, int id, const QString& label, const QString& channel, const QString& message, const QString& parameters, const QString& message2, const QString& parameters2);
@@ -261,6 +282,9 @@ class ExternalAppHandler : public QObject
static ExternalAppHandler *sInstance;
+ private slots:
+ void receivedNameEmailUidList_Slot(const QString& uid, const QStringList& nameList, const QStringList& emailList, const QStringList& uidList, const QStringList&, const QStringList&, const QStringList& );
+
};