mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-13 05:15:45 +00:00
add a couple methods for imap folder sync
This commit is contained in:
parent
920396ce57
commit
9d40543f13
@ -185,6 +185,11 @@ public:
|
|||||||
// but also useful to tell the summary to mark itself invalid
|
// but also useful to tell the summary to mark itself invalid
|
||||||
NS_IMETHOD SetSummaryValid(PRBool valid) = 0;
|
NS_IMETHOD SetSummaryValid(PRBool valid) = 0;
|
||||||
|
|
||||||
|
// offline operations
|
||||||
|
NS_IMETHOD ListAllOfflineOpIds(nsMsgKeyArray *offlineOpIds) = 0;
|
||||||
|
NS_IMETHOD ListAllOfflineDeletes(nsMsgKeyArray *offlineDeletes) = 0;
|
||||||
|
|
||||||
|
// thread interfaces.
|
||||||
NS_IMETHOD GetThreadForMsgKey(nsMsgKey msgKey, nsIMsgThread **result) = 0;
|
NS_IMETHOD GetThreadForMsgKey(nsMsgKey msgKey, nsIMsgThread **result) = 0;
|
||||||
NS_IMETHOD GetThreadContainingMsgHdr(nsIMessage *msgHdr, nsIMsgThread **result) = 0;
|
NS_IMETHOD GetThreadContainingMsgHdr(nsIMessage *msgHdr, nsIMsgThread **result) = 0;
|
||||||
};
|
};
|
||||||
|
@ -173,6 +173,10 @@ public:
|
|||||||
// but also useful to tell the summary to mark itself invalid
|
// but also useful to tell the summary to mark itself invalid
|
||||||
NS_IMETHOD SetSummaryValid(PRBool valid);
|
NS_IMETHOD SetSummaryValid(PRBool valid);
|
||||||
|
|
||||||
|
// offline operations
|
||||||
|
NS_IMETHOD ListAllOfflineOpIds(nsMsgKeyArray *offlineOpIds);
|
||||||
|
NS_IMETHOD ListAllOfflineDeletes(nsMsgKeyArray *offlineDeletes);
|
||||||
|
|
||||||
NS_IMETHOD GetThreadForMsgKey(nsMsgKey msgKey, nsIMsgThread **result);
|
NS_IMETHOD GetThreadForMsgKey(nsMsgKey msgKey, nsIMsgThread **result);
|
||||||
NS_IMETHOD GetThreadContainingMsgHdr(nsIMessage *msgHdr, nsIMsgThread **result) ;
|
NS_IMETHOD GetThreadContainingMsgHdr(nsIMessage *msgHdr, nsIMsgThread **result) ;
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -1945,12 +1945,17 @@ NS_IMETHODIMP nsMsgDatabase::GetMsgHdrStructFromnsMsgHdr(nsIMessage *msg, nsMsgH
|
|||||||
|
|
||||||
if (msgHdr)
|
if (msgHdr)
|
||||||
{
|
{
|
||||||
|
PRUint32 uint32Value = 0;
|
||||||
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_subjectColumnToken, hdrStruct->m_subject);
|
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_subjectColumnToken, hdrStruct->m_subject);
|
||||||
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_senderColumnToken, hdrStruct->m_author);
|
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_senderColumnToken, hdrStruct->m_author);
|
||||||
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_messageIdColumnToken, hdrStruct->m_messageId);
|
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_messageIdColumnToken, hdrStruct->m_messageId);
|
||||||
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_referencesColumnToken, hdrStruct->m_references);
|
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_referencesColumnToken, hdrStruct->m_references);
|
||||||
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_recipientsColumnToken, hdrStruct->m_recipients);
|
err = RowCellColumnTonsString(msgHdr->GetMDBRow(), m_recipientsColumnToken, hdrStruct->m_recipients);
|
||||||
err = RowCellColumnToUInt32(msgHdr->GetMDBRow(), m_messageSizeColumnToken, &hdrStruct->m_messageSize);
|
err = RowCellColumnToUInt32(msgHdr->GetMDBRow(), m_messageSizeColumnToken, &hdrStruct->m_messageSize);
|
||||||
|
err = RowCellColumnToUInt32(msgHdr->GetMDBRow(), m_flagsColumnToken, &hdrStruct->m_flags);
|
||||||
|
err = RowCellColumnToUInt32(msgHdr->GetMDBRow(), m_dateColumnToken, &uint32Value);
|
||||||
|
hdrStruct->m_date = uint32Value;
|
||||||
|
|
||||||
nsMsgKey key;
|
nsMsgKey key;
|
||||||
(void)msgHdr->GetMessageKey(&key);
|
(void)msgHdr->GetMessageKey(&key);
|
||||||
hdrStruct->m_messageKey = key;
|
hdrStruct->m_messageKey = key;
|
||||||
@ -2437,6 +2442,7 @@ nsresult nsMsgDatabase::AddNewThread(nsMsgHdr *msgHdr)
|
|||||||
nsMsgThread *threadHdr = nsnull;
|
nsMsgThread *threadHdr = nsnull;
|
||||||
|
|
||||||
nsresult err = CreateNewThread(msgHdr->m_messageKey, &threadHdr);
|
nsresult err = CreateNewThread(msgHdr->m_messageKey, &threadHdr);
|
||||||
|
msgHdr->SetThreadId(msgHdr->m_messageKey);
|
||||||
if (threadHdr)
|
if (threadHdr)
|
||||||
{
|
{
|
||||||
// nsString subject;
|
// nsString subject;
|
||||||
@ -2508,6 +2514,25 @@ nsresult nsMsgDatabase::ListAllThreads(nsMsgKeyArray *threadIds)
|
|||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP nsMsgDatabase::ListAllOfflineOpIds(nsMsgKeyArray *offlineOpIds)
|
||||||
|
{
|
||||||
|
nsresult ret = NS_OK;
|
||||||
|
if (!offlineOpIds)
|
||||||
|
return NS_ERROR_NULL_POINTER;
|
||||||
|
// technically, notimplemented, but no one's putting offline ops in anyway.
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP nsMsgDatabase::ListAllOfflineDeletes(nsMsgKeyArray *offlineDeletes)
|
||||||
|
{
|
||||||
|
nsresult ret = NS_OK;
|
||||||
|
if (!offlineDeletes)
|
||||||
|
return NS_ERROR_NULL_POINTER;
|
||||||
|
|
||||||
|
// technically, notimplemented, but no one's putting offline ops in anyway.
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
nsresult nsMsgDatabase::DumpContents()
|
nsresult nsMsgDatabase::DumpContents()
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user