added the new token service in this file

This commit is contained in:
PYRET1C 2023-08-20 18:19:05 +05:30
parent 685cc29415
commit 5433e85323

View File

@ -25,6 +25,7 @@
#include "gui/gxs/GxsIdDetails.h"
#include "gui/common/FilesDefs.h"
#include "util/misc.h"
#include "util/qtthreadsutils.h"
#include "PulseAddDialog.h"
@ -98,11 +99,32 @@ void PulseAddDialog::setGroup(RsWireGroup &group)
// set ReplyWith Group.
void PulseAddDialog::setGroup(const RsGxsGroupId &grpId)
{
/* fetch in the background */
if(grpId.isNull()){
return;
}
RsWireGroupSPtr pGroup;
rsWire->getWireGroup(grpId, pGroup);
RsThread::async([this,grpId,&pGroup](){
if(!rsWire->getWireGroup(grpId,pGroup))
{
std::cerr << __PRETTY_FUNCTION__ << " failed to retrieve wire group info for wire id: " << grpId << std::endl;
return;
}
RsQThreadUtils::postToObject( [pGroup,this]()
{
/* Here it goes any code you want to be executed on the Qt Gui
* thread, for example to update the data model with new information
* after a blocking call to RetroShare API complete, note that
* Qt::QueuedConnection is important!
*/
setGroup(*pGroup);
}, this );
});
}
void PulseAddDialog::cleanup()
@ -234,20 +256,24 @@ void PulseAddDialog::setReplyTo(const RsWirePulse &pulse, RsWirePulseSPtr pPulse
void PulseAddDialog::setReplyTo(const RsGxsGroupId &grpId, const RsGxsMessageId &msgId, uint32_t replyType)
{
if(grpId.isNull()){
return;
}
/* fetch in the background */
RsWireGroupSPtr pGroup;
if (!rsWire->getWireGroup(grpId, pGroup))
RsWirePulseSPtr pPulse;
RsThread::async([this,grpId,&pGroup,&pPulse,msgId,replyType](){
if(!rsWire->getWireGroup(grpId,pGroup))
{
std::cerr << "PulseAddDialog::setRplyTo() failed to fetch group";
std::cerr << std::endl;
std::cerr << __PRETTY_FUNCTION__ << "PulseAddDialog::setRplyTo() failed to fetch group id: " << grpId << std::endl;
return;
}
RsWirePulseSPtr pPulse;
if (!rsWire->getWirePulse(grpId, msgId, pPulse))
{
std::cerr << "PulseAddDialog::setRplyTo() failed to fetch pulse";
std::cerr << std::endl;
std::cerr << "PulseAddDialog::setRplyTo() failed to fetch pulse of group id: " << grpId << std::endl;
return;
}
@ -257,7 +283,19 @@ void PulseAddDialog::setReplyTo(const RsGxsGroupId &grpId, const RsGxsMessageId
pPulse->mGroupPtr = pGroup;
}
RsQThreadUtils::postToObject( [pGroup,this,pPulse,replyType]()
{
/* Here it goes any code you want to be executed on the Qt Gui
* thread, for example to update the data model with new information
* after a blocking call to RetroShare API complete, note that
* Qt::QueuedConnection is important!
*/
setReplyTo(*pPulse, pPulse, pGroup->mMeta.mGroupName, replyType);
}, this );
});
}
void PulseAddDialog::addURL()
@ -307,7 +345,7 @@ void PulseAddDialog::postOriginalPulse()
std::cerr << "PulseAddDialog::postOriginalPulse()";
std::cerr << std::endl;
RsWirePulseSPtr pPulse(new RsWirePulse());
RsWirePulseSPtr pPulse;
pPulse->mSentiment = WIRE_PULSE_SENTIMENT_NO_SENTIMENT;
pPulse->mPulseText = ui.textEdit_Pulse->toPlainText().toStdString();
@ -317,7 +355,8 @@ void PulseAddDialog::postOriginalPulse()
pPulse->mImage3 = mImage3;
pPulse->mImage4 = mImage4;
// this should be in async thread, so doesn't block UI thread.
RsThread::async([this,pPulse](){
if (!rsWire->createOriginalPulse(mGroup.mMeta.mGroupId, pPulse))
{
std::cerr << "PulseAddDialog::postOriginalPulse() FAILED";
@ -325,8 +364,20 @@ void PulseAddDialog::postOriginalPulse()
return;
}
RsQThreadUtils::postToObject( [this]()
{
/* Here it goes any code you want to be executed on the Qt Gui
* thread, for example to update the data model with new information
* after a blocking call to RetroShare API complete, note that
* Qt::QueuedConnection is important!
*/
clearDialog();
hide();
}, this );
});
}
uint32_t PulseAddDialog::toPulseSentiment(int index)
@ -356,7 +407,7 @@ void PulseAddDialog::postReplyPulse()
std::cerr << "PulseAddDialog::postReplyPulse()";
std::cerr << std::endl;
RsWirePulseSPtr pPulse(new RsWirePulse());
RsWirePulseSPtr pPulse;
pPulse->mSentiment = toPulseSentiment(ui.comboBox_sentiment->currentIndex());
pPulse->mPulseText = ui.textEdit_Pulse->toPlainText().toStdString();
@ -378,7 +429,8 @@ void PulseAddDialog::postReplyPulse()
pPulse->mImage4 = mReplyToPulse.mImage4;
}
// this should be in async thread, so doesn't block UI thread.
RsThread::async([this, pPulse](){
if (!rsWire->createReplyPulse(mReplyToPulse.mMeta.mGroupId,
mReplyToPulse.mMeta.mOrigMsgId,
mGroup.mMeta.mGroupId,
@ -390,8 +442,20 @@ void PulseAddDialog::postReplyPulse()
return;
}
RsQThreadUtils::postToObject( [this]()
{
/* Here it goes any code you want to be executed on the Qt Gui
* thread, for example to update the data model with new information
* after a blocking call to RetroShare API complete, note that
* Qt::QueuedConnection is important!
*/
clearDialog();
hide();
}, this );
});
}
void PulseAddDialog::clearDialog()