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 623 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 749 of file gclientprotocol.cpp.
|
static |
Factory function for a generalised error reply.
Definition at line 668 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 702 of file gclientprotocol.cpp.
bool GSmtp::ClientProtocolReply::incomplete | ( | ) | const |
Returns true if the reply is incomplete.
Definition at line 682 of file gclientprotocol.cpp.
bool GSmtp::ClientProtocolReply::is | ( | Value | v | ) | const |
Returns true if the reply value is 'v'.
Definition at line 697 of file gclientprotocol.cpp.
|
static |
Factory function for an ok reply.
Definition at line 646 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 655 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 687 of file gclientprotocol.cpp.
GSmtp::ClientProtocolReply::SubType GSmtp::ClientProtocolReply::subType | ( | ) | const |
Returns the reply sub-type.
Definition at line 739 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 708 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 760 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 713 of file gclientprotocol.cpp.
GSmtp::ClientProtocolReply::Type GSmtp::ClientProtocolReply::type | ( | ) | const |
Returns the reply type (category).
Definition at line 733 of file gclientprotocol.cpp.
References G_ASSERT.
bool GSmtp::ClientProtocolReply::validFormat | ( | ) | const |
Returns true if a valid format.
Definition at line 677 of file gclientprotocol.cpp.
int GSmtp::ClientProtocolReply::value | ( | ) | const |
Returns the numeric value of the reply.
Definition at line 692 of file gclientprotocol.cpp.
Referenced by add().