/***************************************************************************
- * Copyright (C) 2005-2013 by the Quassel Project *
+ * Copyright (C) 2005-2014 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include "coretransfermanager.h"
-#include "transfer.h"
-
+#include "coretransfer.h"
INIT_SYNCABLE_OBJECT(CoreTransferManager)
CoreTransferManager::CoreTransferManager(QObject *parent)
}
-void CoreTransferManager::onTransferAdded(const Transfer *transfer)
+CoreTransfer *CoreTransferManager::transfer(const QUuid &uuid) const
{
- connect(transfer, SIGNAL(accepted(PeerPtr)), SLOT(onTransferAccepted(PeerPtr)));
- connect(transfer, SIGNAL(rejected(PeerPtr)), SLOT(onTransferRejected(PeerPtr)));
+ return qobject_cast<CoreTransfer *>(transfer_(uuid));
}
-void CoreTransferManager::onTransferAccepted(PeerPtr peer)
+void CoreTransferManager::addTransfer(CoreTransfer *transfer)
{
-
+ TransferManager::addTransfer(transfer);
}
-void CoreTransferManager::onTransferRejected(PeerPtr peer)
+void CoreTransferManager::onTransferAdded(const Transfer *transfer)
{
-
+ // for core-side use, publishing a non-const pointer is ok
+ CoreTransfer *t = const_cast<CoreTransfer *>(qobject_cast<const CoreTransfer *>(transfer));
+ if (!t) {
+ qWarning() << "Invalid Transfer added to CoreTransferManager!";
+ return;
+ }
+
+ emit transferAdded(t);
}