VMime
|
Public Member Functions | |
emailAddress () | |
emailAddress (const emailAddress &eml) | |
emailAddress (const string &email) | |
emailAddress (const char *email) | |
emailAddress (const string &localName, const string &domainName) | |
emailAddress (const word &localName, const word &domainName) | |
const word & | getLocalName () const |
void | setLocalName (const word &localName) |
const word & | getDomainName () const |
void | setDomainName (const word &domainName) |
bool | isEmpty () const |
const string | toString () const |
const text | toText () const |
bool | operator== (const class emailAddress &eml) const |
bool | operator!= (const class emailAddress &eml) const |
void | copyFrom (const component &other) |
shared_ptr< component > | clone () const |
emailAddress & | operator= (const emailAddress &other) |
const std::vector< shared_ptr< component > > | getChildComponents () |
void | parseImpl (const parsingContext &ctx, const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | generateImpl (const generationContext &ctx, utility::outputStream &os, const size_t curLinePos=0, size_t *newLinePos=NULL) const |
void | parse (const string &buffer) |
void | parse (const parsingContext &ctx, const string &buffer) |
void | parse (shared_ptr< utility::inputStream > inputStream, const size_t length) |
void | parse (const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | parse (const parsingContext &ctx, const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | parse (shared_ptr< utility::inputStream > inputStream, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | parse (const parsingContext &ctx, shared_ptr< utility::inputStream > inputStream, const size_t position, const size_t end, size_t *newPosition=NULL) |
virtual const string | generate (const size_t maxLineLength=lineLengthLimits::infinite, const size_t curLinePos=0) const |
virtual void | generate (utility::outputStream &outputStream, const size_t curLinePos=0, size_t *newLinePos=NULL) const |
virtual void | generate (const generationContext &ctx, utility::outputStream &outputStream, const size_t curLinePos=0, size_t *newLinePos=NULL) const |
![]() | |
component () | |
virtual | ~component () |
void | parse (const string &buffer) |
void | parse (const parsingContext &ctx, const string &buffer) |
void | parse (shared_ptr< utility::inputStream > inputStream, const size_t length) |
void | parse (const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | parse (const parsingContext &ctx, const string &buffer, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | parse (shared_ptr< utility::inputStream > inputStream, const size_t position, const size_t end, size_t *newPosition=NULL) |
void | parse (const parsingContext &ctx, shared_ptr< utility::inputStream > inputStream, const size_t position, const size_t end, size_t *newPosition=NULL) |
virtual const string | generate (const size_t maxLineLength=lineLengthLimits::infinite, const size_t curLinePos=0) const |
virtual void | generate (utility::outputStream &outputStream, const size_t curLinePos=0, size_t *newLinePos=NULL) const |
virtual void | generate (const generationContext &ctx, utility::outputStream &outputStream, const size_t curLinePos=0, size_t *newLinePos=NULL) const |
size_t | getParsedOffset () const |
size_t | getParsedLength () const |
virtual size_t | getGeneratedSize (const generationContext &ctx) |
Protected Attributes | |
word | m_localName |
word | m_domainName |
Additional Inherited Members | |
![]() | |
void | setParsedBounds (const size_t start, const size_t end) |
virtual void | parseImpl (const parsingContext &ctx, shared_ptr< utility::parserInputStreamAdapter > parser, const size_t position, const size_t end, size_t *newPosition=NULL) |
![]() | |
object () | |
object (const object &) | |
object & | operator= (const object &) |
virtual | ~object () |
An email address: local name and domain name (basic type).
emailAddress | ( | ) |
emailAddress | ( | const emailAddress & | eml | ) |
emailAddress | ( | const string & | ) |
References component::parse().
emailAddress | ( | const char * | ) |
References component::parse().
emailAddress | ( | const string & | localName, |
const string & | domainName | ||
) |
emailAddress | ( | const word & | localName, |
const word & | domainName | ||
) |
|
virtual |
|
virtual |
Replace data in this component by data in other component.
Both components must be of the same type.
std::bad_cast_exception | if the components are not of the same (dynamic) type |
other | other component to copy data from |
Implements component.
References emailAddress::m_domainName, and emailAddress::m_localName.
Referenced by emailAddress::operator=().
void generate |
Generate RFC-2822/MIME data for this component, using the default generation context.
ctx | generation context |
outputStream | output stream |
curLinePos | length of the current line in the output buffer |
newLinePos | will receive the new line position (length of the last line written) |
const string generate |
Generate RFC-2822/MIME data for this component.
maxLineLength | maximum line length for output |
curLinePos | length of the current line in the output buffer |
void generate |
Generate RFC-2822/MIME data for this component, using the default generation context.
outputStream | output stream |
curLinePos | length of the current line in the output buffer |
newLinePos | will receive the new line position (length of the last line written) |
|
virtual |
Implements component.
References text::FORCE_NO_ENCODING, word::generate(), context::getInternationalizedEmailSupport(), stringUtils::is7bit(), text::QUOTE_IF_NEEDED, and vmime::charsets::UTF_8.
Referenced by emailAddress::toString().
|
virtual |
Return the list of children of this component.
Implements component.
const word & getDomainName | ( | ) | const |
Return the domain name of the address.
References emailAddress::m_domainName.
const word & getLocalName | ( | ) | const |
Return the local name of the address.
References emailAddress::m_localName.
bool isEmpty | ( | ) | const |
Returns whether this email address is empty.
Address is considered as empty if the local part is not specified.
References word::isEmpty(), and emailAddress::m_localName.
Referenced by mailbox::isEmpty().
bool operator!= | ( | const class emailAddress & | eml | ) | const |
emailAddress & operator= | ( | const emailAddress & | other | ) |
References emailAddress::copyFrom().
bool operator== | ( | const class emailAddress & | eml | ) | const |
References emailAddress::m_domainName, and emailAddress::m_localName.
void parse |
Parse RFC-822/MIME data for this component.
ctx | parsing context |
buffer | input buffer |
void parse |
Parse RFC-822/MIME data for this component.
ctx | parsing context |
buffer | input buffer |
position | current position in the input buffer |
end | end position in the input buffer |
newPosition | will receive the new position in the input buffer |
void parse |
Parse RFC-822/MIME data for this component.
If stream is not seekable, or if end position is not specified, entire contents of the stream will be loaded into memory before parsing.
ctx | parsing context |
inputStream | stream from which to read data |
position | current position in the input stream |
end | end position in the input stream |
newPosition | will receive the new position in the input stream |
void parse |
Parse RFC-822/MIME data for this component, using the default parsing context.
buffer | input buffer |
void parse |
Parse RFC-822/MIME data for this component, using the default parsing context.
buffer | input buffer |
position | current position in the input buffer |
end | end position in the input buffer |
newPosition | will receive the new position in the input buffer |
void parse |
Parse RFC-822/MIME data for this component.
If stream is not seekable, or if length is not specified, entire contents of the stream will be loaded into memory before parsing.
inputStream | stream from which to read data |
length | data length, in bytes (0 = unknown/not specified) |
void parse |
Parse RFC-822/MIME data for this component.
If stream is not seekable, or if end position is not specified, entire contents of the stream will be loaded into memory before parsing. The default parsing context will be used.
inputStream | stream from which to read data |
position | current position in the input stream |
end | end position in the input stream |
newPosition | will receive the new position in the input stream |
|
virtual |
Reimplemented from component.
References vmime::end(), platform::getHandler(), parserHelpers::isSpace(), and vmime::charsets::UTF_8.
void setDomainName | ( | const word & | domainName | ) |
Set the domain name of the address.
domainName | domain name of the address |
References emailAddress::m_domainName.
void setLocalName | ( | const word & | localName | ) |
Set the local name of the address.
localName | local name of the address |
References emailAddress::m_localName.
const string toString | ( | ) | const |
Returns the email address as a string, by joining components.
(ie. the local name, followed by a @ then the domain name.)
References emailAddress::generateImpl(), generationContext::getDefaultContext(), vmime::lineLengthLimits::infinite, and generationContext::setMaxLineLength().
const text toText | ( | ) | const |
Returns the email address as multibyte text, by joining components.
(ie. the local name, followed by a @ then the domain name.)
References text::appendWord(), emailAddress::m_domainName, emailAddress::m_localName, and vmime::charsets::US_ASCII.
|
protected |
|
protected |