- Added two new members to GxsGroupStatistic/GxsServiceStatistic - mNumMsgsNew, mNumMsgsUnread

- Set mGrpId on GxsGroupStatistic
- Changed GxsUserNotify and GxsGroupFrameDialog to statistics

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7462 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2014-07-20 19:35:33 +00:00
parent 5399618cef
commit 9c3266fdd9
6 changed files with 50 additions and 102 deletions

View file

@ -1460,12 +1460,25 @@ bool RsGxsDataAccess::getGroupStatistic(GroupStatisticRequest *req)
std::vector<RsGxsMsgMetaData*>& msgMetaV = metaResult[req->mGrpId];
req->mGroupStatistic.mGrpId = req->mGrpId;
req->mGroupStatistic.mNumMsgs = msgMetaV.size();
req->mGroupStatistic.mTotalSizeOfMsgs = 0;
req->mGroupStatistic.mNumMsgsNew = 0;
req->mGroupStatistic.mNumMsgsUnread = 0;
for(int i = 0; i < msgMetaV.size(); i++)
{
RsGxsMsgMetaData* m = msgMetaV[i];
req->mGroupStatistic.mTotalSizeOfMsgs += m->mMsgSize + m->serial_size();
if (IS_MSG_NEW(m->mMsgStatus))
{
++req->mGroupStatistic.mNumMsgsNew;
}
if (IS_MSG_UNREAD(m->mMsgStatus))
{
++req->mGroupStatistic.mNumMsgsUnread;
}
}
cleanseMsgMetaMap(metaResult);
@ -1485,6 +1498,8 @@ bool RsGxsDataAccess::getServiceStatistic(ServiceStatisticRequest *req)
req->mServiceStatistic.mSizeOfGrps = 0;
req->mServiceStatistic.mSizeOfMsgs = 0;
req->mServiceStatistic.mNumGrpsSubscribed = 0;
req->mServiceStatistic.mNumMsgsNew = 0;
req->mServiceStatistic.mNumMsgsUnread = 0;
for(; mit != grpMeta.end(); mit++)
{
@ -1496,6 +1511,8 @@ bool RsGxsDataAccess::getServiceStatistic(ServiceStatisticRequest *req)
req->mServiceStatistic.mNumMsgs += gr.mGroupStatistic.mNumMsgs;
req->mServiceStatistic.mSizeOfMsgs += gr.mGroupStatistic.mTotalSizeOfMsgs;
req->mServiceStatistic.mNumGrpsSubscribed += m->mSubscribeFlags & GXS_SERV::GROUP_SUBSCRIBE_SUBSCRIBED ? 1 : 0;
req->mServiceStatistic.mNumMsgsNew += gr.mGroupStatistic.mNumMsgsNew;
req->mServiceStatistic.mNumMsgsUnread += gr.mGroupStatistic.mNumMsgsUnread;
delete m;
}

View file

@ -139,6 +139,8 @@ public:
RsGxsGroupId mGrpId;
uint32_t mNumMsgs;
uint32_t mTotalSizeOfMsgs;
uint32_t mNumMsgsNew;
uint32_t mNumMsgsUnread;
};
class GxsServiceStatistic
@ -150,6 +152,8 @@ public:
uint32_t mSizeOfMsgs;
uint32_t mSizeOfGrps;
uint32_t mNumGrpsSubscribed;
uint32_t mNumMsgsNew;
uint32_t mNumMsgsUnread;
uint32_t mSizeStore;
};