aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/imap/MCIMAPFolderStatus.cpp
blob: d2cb2281af8982076a17a3fe6fe9fceb565f9f43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
//
//  MCIMAPFolderStatus.cc
//  mailcore2
//
//  Created by Sebastian on 6/11/13.
//  Copyright (c) 2013 MailCore. All rights reserved.
//

#include "MCIMAPFolderStatus.h"

using namespace mailcore;

void IMAPFolderStatus::init()
{
    mUnseenCount = 0;
    mMessageCount = 0;
    mRecentCount = 0;
    mUidNext = 0;
    mUidValidity = 0;
    mHighestModSeqValue = 0;
}

IMAPFolderStatus::IMAPFolderStatus()
{
    init();
}


IMAPFolderStatus::IMAPFolderStatus(IMAPFolderStatus * other)
{
    init();
    setUnseenCount(other->unseenCount());
    setMessageCount(other->messageCount());
    setRecentCount(other->recentCount());
    setUidNext(other->uidNext());
    setUidValidity(other->uidValidity());
    setHighestModSeqValue(other->highestModSeqValue());
}

IMAPFolderStatus::~IMAPFolderStatus()
{
}

Object * IMAPFolderStatus::copy()
{
    return new IMAPFolderStatus(this);
}

void IMAPFolderStatus::setUnseenCount(uint32_t unseen)
{
    mUnseenCount = unseen;
}

uint32_t IMAPFolderStatus::unseenCount()
{
    return mUnseenCount;
}

void IMAPFolderStatus::setMessageCount(uint32_t messages)
{
    mMessageCount = messages;
}

uint32_t IMAPFolderStatus::messageCount()
{
    return mMessageCount;
}

void IMAPFolderStatus::setRecentCount(uint32_t recent)
{
    mRecentCount = recent;
}

uint32_t IMAPFolderStatus::recentCount()
{
    return mRecentCount;
}

void IMAPFolderStatus::setUidNext(uint32_t uidNext)
{
    mUidNext = uidNext;
}

uint32_t IMAPFolderStatus::uidNext()
{
    return mUidNext;
}

void IMAPFolderStatus::setUidValidity(uint32_t uidValidity)
{
    mUidValidity = uidValidity;
}

uint32_t IMAPFolderStatus::uidValidity()
{
    return mUidValidity;
}

void IMAPFolderStatus::setHighestModSeqValue(uint64_t highestModSeqValue)
{
    mHighestModSeqValue = highestModSeqValue;
}

uint64_t IMAPFolderStatus::highestModSeqValue()
{
    return mHighestModSeqValue;
}

String * IMAPFolderStatus::description()
{
    String * result = String::string();
    result->appendUTF8Format("<%s:%p msg_count: %u, unseen_count: %u, recent_count: %u, uid_next: %u, uid_validity: %u, highestmodseqvalue :%llu>",
                             className()->UTF8Characters(),
                             this,
                             (unsigned int) messageCount(),
                             (unsigned int) unseenCount(),
                             (unsigned int) recentCount(),
                             (unsigned int) uidNext(),
                             (unsigned int) uidValidity(),
                             (unsigned long long) highestModSeqValue());
    return result;
}