A private implementation class used by ClientProtocol. More...
#include <gclientprotocol.h>
Public Types | |
enum | Type { PositivePreliminary = 1, PositiveCompletion = 2, PositiveIntermediate = 3, TransientNegative = 4, PermanentNegative = 5 } |
enum | SubType { Syntax = 0, Information = 1, Connections = 2, MailSystem = 3, Invalid_SubType = 4 } |
enum | Value { Internal_2xx = 222, Internal_2yy = 223, Internal_2zz = 224, ServiceReady_220 = 220, Ok_250 = 250, Authenticated_235 = 235, Challenge_334 = 334, OkForData_354 = 354, SyntaxError_500 = 500, SyntaxError_501 = 501, NotImplemented_502 = 502, BadSequence_503 = 503, NotAuthenticated_535 = 535, NotAvailable_454 = 454, Invalid = 0 } |
Public Member Functions | |
ClientProtocolReply (const std::string &line=std::string()) | |
Constructor for one line of text. More... | |
bool | add (const ClientProtocolReply &other) |
Adds more lines to this reply. More... | |
bool | incomplete () const |
Returns true if the reply is incomplete. More... | |
bool | validFormat () const |
Returns true if a valid format. More... | |
bool | positive () const |
Returns true if the numeric value of the reply is less that four hundred. More... | |
bool | is (Value v) const |
Returns true if the reply value is 'v'. More... | |
int | value () const |
Returns the numeric value of the reply. More... | |
std::string | text () const |
Returns the complete text of the reply, excluding the numeric part, and with embedded newlines. More... | |
std::string | errorText () const |
Returns the text() string but with the guarantee that the returned string is empty if and only if the reply value is exactly 250. More... | |
bool | textContains (std::string s) const |
Returns true if the text() contains the given substring. More... | |
std::string | textLine (const std::string &prefix) const |
Returns a line of text() which starts with prefix. More... | |
Type | type () const |
Returns the reply type (category). More... | |
SubType | subType () const |
Returns the reply sub-type. More... | |
Static Public Member Functions | |
static ClientProtocolReply | ok () |
Factory function for an ok reply. More... | |
static ClientProtocolReply | ok (Value) |
Factory function for an ok reply with a specific 2xx value. More... | |
static ClientProtocolReply | error (const std::string &reason) |
Factory function for a generalised error reply. More... | |
A private implementation class used by ClientProtocol.
Definition at line 48 of file gclientprotocol.h.
Enumerator | |
---|---|
Syntax | |
Information | |
Connections | |
MailSystem | |
Invalid_SubType |
Definition at line 59 of file gclientprotocol.h.
Enumerator | |
---|---|
PositivePreliminary | |
PositiveCompletion | |
PositiveIntermediate | |
TransientNegative | |
PermanentNegative |
Definition at line 51 of file gclientprotocol.h.
Definition at line 67 of file gclientprotocol.h.
|
explicit |
Constructor for one line of text.
Definition at line 637 of file gclientprotocol.cpp.
References G::Str::replaceAll(), G::Str::toInt(), and G::Str::trimLeft().
bool GSmtp::ClientProtocolReply::add | ( | const ClientProtocolReply & | other | ) |
Adds more lines to this reply.
Returns false if the numeric values are different.
Definition at line 763 of file gclientprotocol.cpp.
|
static |
Factory function for a generalised error reply.
Definition at line 682 of file gclientprotocol.cpp.
References errorText(), G_ASSERT, incomplete(), positive(), and G::Str::printable().
std::string GSmtp::ClientProtocolReply::errorText | ( | ) | const |
Returns the text() string but with the guarantee that the returned string is empty if and only if the reply value is exactly 250.
Definition at line 716 of file gclientprotocol.cpp.
bool GSmtp::ClientProtocolReply::incomplete | ( | ) | const |
Returns true if the reply is incomplete.
Definition at line 696 of file gclientprotocol.cpp.
bool GSmtp::ClientProtocolReply::is | ( | Value | v | ) | const |
Returns true if the reply value is 'v'.
Definition at line 711 of file gclientprotocol.cpp.
|
static |
Factory function for an ok reply.
Definition at line 660 of file gclientprotocol.cpp.
References errorText(), G_ASSERT, incomplete(), and positive().
|
static |
Factory function for an ok reply with a specific 2xx value.
Definition at line 669 of file gclientprotocol.cpp.
References G_ASSERT.
bool GSmtp::ClientProtocolReply::positive | ( | ) | const |
Returns true if the numeric value of the reply is less that four hundred.
Definition at line 701 of file gclientprotocol.cpp.
GSmtp::ClientProtocolReply::SubType GSmtp::ClientProtocolReply::subType | ( | ) | const |
Returns the reply sub-type.
Definition at line 753 of file gclientprotocol.cpp.
References G_ASSERT.
std::string GSmtp::ClientProtocolReply::text | ( | ) | const |
Returns the complete text of the reply, excluding the numeric part, and with embedded newlines.
Definition at line 722 of file gclientprotocol.cpp.
Referenced by add().
bool GSmtp::ClientProtocolReply::textContains | ( | std::string | s | ) | const |
Returns true if the text() contains the given substring.
Definition at line 774 of file gclientprotocol.cpp.
References G::Str::toUpper().
std::string GSmtp::ClientProtocolReply::textLine | ( | const std::string & | prefix | ) | const |
Returns a line of text() which starts with prefix.
Definition at line 727 of file gclientprotocol.cpp.
GSmtp::ClientProtocolReply::Type GSmtp::ClientProtocolReply::type | ( | ) | const |
Returns the reply type (category).
Definition at line 747 of file gclientprotocol.cpp.
References G_ASSERT.
bool GSmtp::ClientProtocolReply::validFormat | ( | ) | const |
Returns true if a valid format.
Definition at line 691 of file gclientprotocol.cpp.
int GSmtp::ClientProtocolReply::value | ( | ) | const |
Returns the numeric value of the reply.
Definition at line 706 of file gclientprotocol.cpp.
Referenced by add().