X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoretransfermanager.cpp;h=7fb37e80581f5efced33745ed0c10d4e67772759;hp=a11927abcc0e4156155b5f6833ded2d577834e8a;hb=0d7b511c8510d7fd05d3a704114e34ff37f7a995;hpb=7768b765b21279eadef1400c6c614c63a3db8ed8 diff --git a/src/core/coretransfermanager.cpp b/src/core/coretransfermanager.cpp index a11927ab..7fb37e80 100644 --- a/src/core/coretransfermanager.cpp +++ b/src/core/coretransfermanager.cpp @@ -20,8 +20,7 @@ #include "coretransfermanager.h" -#include "transfer.h" - +#include "coretransfer.h" INIT_SYNCABLE_OBJECT(CoreTransferManager) CoreTransferManager::CoreTransferManager(QObject *parent) @@ -31,10 +30,31 @@ CoreTransferManager::CoreTransferManager(QObject *parent) } +CoreTransfer *CoreTransferManager::transfer(const QUuid &uuid) const +{ + return qobject_cast(transfer_(uuid)); +} + + +void CoreTransferManager::addTransfer(CoreTransfer *transfer) +{ + TransferManager::addTransfer(transfer); +} + + void CoreTransferManager::onTransferAdded(const Transfer *transfer) { + // for core-side use, publishing a non-const pointer is ok + CoreTransfer *t = const_cast(qobject_cast(transfer)); + if (!t) { + qWarning() << "Invalid Transfer added to CoreTransferManager!"; + return; + } + connect(transfer, SIGNAL(accepted(PeerPtr)), SLOT(onTransferAccepted(PeerPtr))); connect(transfer, SIGNAL(rejected(PeerPtr)), SLOT(onTransferRejected(PeerPtr))); + + emit transferAdded(t); }