mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-10-01 02:35:48 -04:00
added blocking API for createComment() in GxsCommentService and removed token queue from GxsCreateCommentDialog
This commit is contained in:
parent
ab2c1f23e9
commit
dc3c3488df
@ -157,7 +157,9 @@ struct RsGxsCommentService
|
|||||||
virtual bool getRelatedComments( uint32_t token,
|
virtual bool getRelatedComments( uint32_t token,
|
||||||
std::vector<RsGxsComment> &comments ) = 0;
|
std::vector<RsGxsComment> &comments ) = 0;
|
||||||
|
|
||||||
virtual bool createNewComment(uint32_t &token, RsGxsComment &comment) = 0;
|
virtual bool createNewComment(uint32_t &token, const RsGxsComment &comment) = 0; // async API
|
||||||
|
virtual bool createComment(RsGxsComment& comment) = 0; // blocking API. Updates comment with new metadata.
|
||||||
|
|
||||||
virtual bool createNewVote(uint32_t &token, RsGxsVote &vote) = 0;
|
virtual bool createNewVote(uint32_t &token, RsGxsVote &vote) = 0;
|
||||||
|
|
||||||
virtual bool acknowledgeComment(
|
virtual bool acknowledgeComment(
|
||||||
|
@ -140,7 +140,7 @@ virtual bool getChannelDownloadDirectory(const RsGxsGroupId &groupId, std::strin
|
|||||||
std::vector<RsGxsComment> &msgs ) override
|
std::vector<RsGxsComment> &msgs ) override
|
||||||
{ return mCommentService->getGxsRelatedComments(token, msgs); }
|
{ return mCommentService->getGxsRelatedComments(token, msgs); }
|
||||||
|
|
||||||
virtual bool createNewComment(uint32_t &token, RsGxsComment &msg) override
|
virtual bool createNewComment(uint32_t &token, const RsGxsComment &msg) override
|
||||||
{
|
{
|
||||||
return mCommentService->createGxsComment(token, msg);
|
return mCommentService->createGxsComment(token, msg);
|
||||||
}
|
}
|
||||||
@ -277,7 +277,7 @@ virtual bool ExtraFileRemove(const RsFileHash &hash);
|
|||||||
|
|
||||||
/// @deprecated Implementation of @see RsGxsChannels::createComment
|
/// @deprecated Implementation of @see RsGxsChannels::createComment
|
||||||
RS_DEPRECATED_FOR(createCommentV2)
|
RS_DEPRECATED_FOR(createCommentV2)
|
||||||
bool createComment(RsGxsComment& comment) override;
|
bool createComment(RsGxsComment &comment) override;
|
||||||
|
|
||||||
/// @deprecated Implementation of @see RsGxsChannels::createVote
|
/// @deprecated Implementation of @see RsGxsChannels::createVote
|
||||||
RS_DEPRECATED_FOR(createVoteV2)
|
RS_DEPRECATED_FOR(createVoteV2)
|
||||||
|
@ -425,7 +425,7 @@ double p3GxsCommentService::calculateBestScore(int upVotes, int downVotes)
|
|||||||
|
|
||||||
/********************************************************************************************/
|
/********************************************************************************************/
|
||||||
|
|
||||||
bool p3GxsCommentService::createGxsComment(uint32_t &token, RsGxsComment &msg)
|
bool p3GxsCommentService::createGxsComment(uint32_t &token, const RsGxsComment &msg)
|
||||||
{
|
{
|
||||||
#ifdef DEBUG_GXSCOMMON
|
#ifdef DEBUG_GXSCOMMON
|
||||||
std::cerr << "p3GxsCommentService::createGxsComment() GroupId: " << msg.mMeta.mGroupId;
|
std::cerr << "p3GxsCommentService::createGxsComment() GroupId: " << msg.mMeta.mGroupId;
|
||||||
|
@ -66,7 +66,7 @@ class p3GxsCommentService: public GxsTokenQueue
|
|||||||
bool getGxsCommentData(const uint32_t &token, std::vector<RsGxsComment> &msgs);
|
bool getGxsCommentData(const uint32_t &token, std::vector<RsGxsComment> &msgs);
|
||||||
bool getGxsRelatedComments(const uint32_t &token, std::vector<RsGxsComment> &msgs);
|
bool getGxsRelatedComments(const uint32_t &token, std::vector<RsGxsComment> &msgs);
|
||||||
|
|
||||||
bool createGxsComment(uint32_t &token, RsGxsComment &msg);
|
bool createGxsComment(uint32_t &token, const RsGxsComment &msg);
|
||||||
bool createGxsVote(uint32_t &token, RsGxsVote &msg);
|
bool createGxsVote(uint32_t &token, RsGxsVote &msg);
|
||||||
|
|
||||||
// Special Acknowledge.
|
// Special Acknowledge.
|
||||||
|
@ -85,7 +85,7 @@ public:
|
|||||||
return mCommentService->getGxsRelatedComments(token, msgs);
|
return mCommentService->getGxsRelatedComments(token, msgs);
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual bool createNewComment(uint32_t &token, RsGxsComment &msg) override
|
virtual bool createNewComment(uint32_t &token, const RsGxsComment &msg) override
|
||||||
{
|
{
|
||||||
return mCommentService->createGxsComment(token, msg);
|
return mCommentService->createGxsComment(token, msg);
|
||||||
}
|
}
|
||||||
|
@ -96,10 +96,16 @@ virtual void setMessageReadStatus(uint32_t& token, const RsGxsGrpMsgIdPair& msgI
|
|||||||
std::vector<RsGxsComment> &msgs )
|
std::vector<RsGxsComment> &msgs )
|
||||||
{ return mCommentService->getGxsRelatedComments(token, msgs); }
|
{ return mCommentService->getGxsRelatedComments(token, msgs); }
|
||||||
|
|
||||||
virtual bool createNewComment(uint32_t &token, RsGxsComment &msg)
|
virtual bool createNewComment(uint32_t &token, const RsGxsComment &msg) override
|
||||||
{
|
{
|
||||||
return mCommentService->createGxsComment(token, msg);
|
return mCommentService->createGxsComment(token, msg);
|
||||||
}
|
}
|
||||||
|
virtual bool createComment(RsGxsComment& msg) override
|
||||||
|
{
|
||||||
|
uint32_t token;
|
||||||
|
|
||||||
|
return mCommentService->createGxsComment(token, msg) && waitToken(token) == RsTokenService::COMPLETE ;
|
||||||
|
}
|
||||||
|
|
||||||
virtual bool createNewVote(uint32_t &token, RsGxsVote &msg)
|
virtual bool createNewVote(uint32_t &token, RsGxsVote &msg)
|
||||||
{
|
{
|
||||||
|
@ -47,7 +47,7 @@
|
|||||||
|
|
||||||
PostedCreatePostDialog::PostedCreatePostDialog(TokenQueue* tokenQ, RsPosted *posted, const RsGxsGroupId& grpId, QWidget *parent):
|
PostedCreatePostDialog::PostedCreatePostDialog(TokenQueue* tokenQ, RsPosted *posted, const RsGxsGroupId& grpId, QWidget *parent):
|
||||||
QDialog(parent, Qt::WindowSystemMenuHint | Qt::WindowTitleHint | Qt::WindowMinimizeButtonHint | Qt::WindowMaximizeButtonHint | Qt::WindowCloseButtonHint),
|
QDialog(parent, Qt::WindowSystemMenuHint | Qt::WindowTitleHint | Qt::WindowMinimizeButtonHint | Qt::WindowMaximizeButtonHint | Qt::WindowCloseButtonHint),
|
||||||
mTokenQueue(tokenQ), mPosted(posted), mGrpId(grpId),
|
mPosted(posted), mGrpId(grpId),
|
||||||
ui(new Ui::PostedCreatePostDialog)
|
ui(new Ui::PostedCreatePostDialog)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
@ -176,7 +176,6 @@ void PostedCreatePostDialog::createPost()
|
|||||||
|
|
||||||
uint32_t token;
|
uint32_t token;
|
||||||
mPosted->createPost(token, post);
|
mPosted->createPost(token, post);
|
||||||
// mTokenQueue->queueRequest(token, TOKENREQ_MSGINFO, RS_TOKREQ_ANSTYPE_ACK, TOKEN_USER_TYPE_POST);
|
|
||||||
|
|
||||||
accept();
|
accept();
|
||||||
}
|
}
|
||||||
|
@ -62,7 +62,6 @@ private:
|
|||||||
|
|
||||||
QString mLink;
|
QString mLink;
|
||||||
QString mNotes;
|
QString mNotes;
|
||||||
TokenQueue* mTokenQueue;
|
|
||||||
RsPosted* mPosted;
|
RsPosted* mPosted;
|
||||||
RsGxsGroupId mGrpId;
|
RsGxsGroupId mGrpId;
|
||||||
|
|
||||||
|
@ -307,7 +307,7 @@ void GxsCommentTreeWidget::banUser()
|
|||||||
|
|
||||||
void GxsCommentTreeWidget::makeComment()
|
void GxsCommentTreeWidget::makeComment()
|
||||||
{
|
{
|
||||||
GxsCreateCommentDialog pcc(mTokenQueue, mCommentService, std::make_pair(mGroupId,mLatestMsgId), mLatestMsgId, this);
|
GxsCreateCommentDialog pcc(mCommentService, std::make_pair(mGroupId,mLatestMsgId), mLatestMsgId, this);
|
||||||
pcc.exec();
|
pcc.exec();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -316,7 +316,7 @@ void GxsCommentTreeWidget::replyToComment()
|
|||||||
RsGxsGrpMsgIdPair msgId;
|
RsGxsGrpMsgIdPair msgId;
|
||||||
msgId.first = mGroupId;
|
msgId.first = mGroupId;
|
||||||
msgId.second = mCurrentCommentMsgId;
|
msgId.second = mCurrentCommentMsgId;
|
||||||
GxsCreateCommentDialog pcc(mTokenQueue, mCommentService, msgId, mLatestMsgId, this);
|
GxsCreateCommentDialog pcc(mCommentService, msgId, mLatestMsgId, this);
|
||||||
|
|
||||||
pcc.loadComment(mCurrentCommentText, mCurrentCommentAuthor, mCurrentCommentAuthorId);
|
pcc.loadComment(mCurrentCommentText, mCurrentCommentAuthor, mCurrentCommentAuthorId);
|
||||||
pcc.exec();
|
pcc.exec();
|
||||||
|
@ -26,20 +26,16 @@
|
|||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
GxsCreateCommentDialog::GxsCreateCommentDialog(TokenQueue *tokQ, RsGxsCommentService *service,
|
GxsCreateCommentDialog::GxsCreateCommentDialog(RsGxsCommentService *service, const RsGxsGrpMsgIdPair &parentId, const RsGxsMessageId& threadId, QWidget *parent) :
|
||||||
const RsGxsGrpMsgIdPair &parentId, const RsGxsMessageId& threadId, QWidget *parent) :
|
|
||||||
QDialog(parent),
|
QDialog(parent),
|
||||||
ui(new Ui::GxsCreateCommentDialog), mTokenQueue(tokQ), mCommentService(service), mParentId(parentId), mThreadId(threadId)
|
ui(new Ui::GxsCreateCommentDialog), mCommentService(service), mParentId(parentId), mThreadId(threadId)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(createComment()));
|
connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(createComment()));
|
||||||
connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(close()));
|
connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(close()));
|
||||||
|
|
||||||
|
|
||||||
/* fill in the available OwnIds for signing */
|
/* fill in the available OwnIds for signing */
|
||||||
ui->idChooser->loadIds(IDCHOOSER_ID_REQUIRED, RsGxsId());
|
ui->idChooser->loadIds(IDCHOOSER_ID_REQUIRED, RsGxsId());
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void GxsCreateCommentDialog::loadComment(const QString &msgText, const QString &msgAuthor, const RsGxsId &msgAuthorId)
|
void GxsCreateCommentDialog::loadComment(const QString &msgText, const QString &msgAuthor, const RsGxsId &msgAuthorId)
|
||||||
@ -80,9 +76,9 @@ void GxsCreateCommentDialog::createComment()
|
|||||||
std::cerr << "ThreadId : " << comment.mMeta.mThreadId << std::endl;
|
std::cerr << "ThreadId : " << comment.mMeta.mThreadId << std::endl;
|
||||||
std::cerr << "ParentId : " << comment.mMeta.mParentId << std::endl;
|
std::cerr << "ParentId : " << comment.mMeta.mParentId << std::endl;
|
||||||
|
|
||||||
|
|
||||||
RsGxsId authorId;
|
RsGxsId authorId;
|
||||||
switch (ui->idChooser->getChosenId(authorId)) {
|
switch (ui->idChooser->getChosenId(authorId))
|
||||||
|
{
|
||||||
case GxsIdChooser::KnowId:
|
case GxsIdChooser::KnowId:
|
||||||
case GxsIdChooser::UnKnowId:
|
case GxsIdChooser::UnKnowId:
|
||||||
comment.mMeta.mAuthorId = authorId;
|
comment.mMeta.mAuthorId = authorId;
|
||||||
@ -96,17 +92,12 @@ void GxsCreateCommentDialog::createComment()
|
|||||||
std::cerr << "GxsCreateCommentDialog::createComment() ERROR GETTING AuthorId!";
|
std::cerr << "GxsCreateCommentDialog::createComment() ERROR GETTING AuthorId!";
|
||||||
std::cerr << std::endl;
|
std::cerr << std::endl;
|
||||||
|
|
||||||
int ret = QMessageBox::information(this, tr("Comment Signing Error"),
|
QMessageBox::information(this, tr("Comment Signing Error"), tr("You need to create an Identity\n" "before you can comment"), QMessageBox::Ok);
|
||||||
tr("You need to create an Identity\n"
|
|
||||||
"before you can comment"),
|
|
||||||
QMessageBox::Ok);
|
|
||||||
Q_UNUSED(ret)
|
|
||||||
return;
|
return;
|
||||||
}//switch (ui->idChooser->getChosenId(authorId))
|
}
|
||||||
|
|
||||||
uint32_t token;
|
uint32_t token;
|
||||||
mCommentService->createNewComment(token, comment);
|
mCommentService->createComment(comment);
|
||||||
mTokenQueue->queueRequest(token, TOKENREQ_MSGINFO, RS_TOKREQ_ANSTYPE_ACK, 0);
|
|
||||||
close();
|
close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,8 +36,7 @@ class GxsCreateCommentDialog : public QDialog
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit GxsCreateCommentDialog(TokenQueue* tokQ, RsGxsCommentService *service,
|
explicit GxsCreateCommentDialog(RsGxsCommentService *service, const RsGxsGrpMsgIdPair& parentId, const RsGxsMessageId& threadId, QWidget *parent = 0);
|
||||||
const RsGxsGrpMsgIdPair& parentId, const RsGxsMessageId& threadId, QWidget *parent = 0);
|
|
||||||
~GxsCreateCommentDialog();
|
~GxsCreateCommentDialog();
|
||||||
|
|
||||||
void loadComment(const QString &msgText, const QString &msgAuthor, const RsGxsId &msgAuthorId);
|
void loadComment(const QString &msgText, const QString &msgAuthor, const RsGxsId &msgAuthorId);
|
||||||
@ -47,7 +46,6 @@ private slots:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::GxsCreateCommentDialog *ui;
|
Ui::GxsCreateCommentDialog *ui;
|
||||||
TokenQueue *mTokenQueue;
|
|
||||||
RsGxsCommentService *mCommentService;
|
RsGxsCommentService *mCommentService;
|
||||||
|
|
||||||
RsGxsGrpMsgIdPair mParentId;
|
RsGxsGrpMsgIdPair mParentId;
|
||||||
|
Loading…
Reference in New Issue
Block a user