Aspose::Email::Clients Namespace Reference

Namespaces

 Activity
 
 Base
 
 Dns
 
 Exchange
 
 Google
 
 Graph
 
 Imap
 
 Pop3
 
 Smtp
 

Classes

class  AsyncCommandResultEventArgs
 AsyncCommandResultEventArgs is containing event data. More...
 
class  CommandStatus
 Indicates the result of an operation. More...
 
class  Details_NetworkException
 Thrown if there is a network connection failure. More...
 
class  EmailClient
 Represents the client that creates server connection by using the host credentials. More...
 
class  HttpProxy
 HTTP proxy client. More...
 
class  IAsyncResultExt
 Represents the extended status of an asynchronous operation. More...
 
class  ICommand
 Defines a command. More...
 
class  IConnection
 IConnectionAdapter allows to manage connection to a server. More...
 
class  IMultipleServicesTokenProvider
 Defines interface allowing to retrieve access token. More...
 
class  ITokenProvider
 Defines interface allowing to retrieve access token. More...
 
class  MessageInfoBase
 The MessageInfo represents the E-Mail message info fetched from the mail server. More...
 
class  NameValuePair
 An extended property. More...
 
class  OAuthNetworkCredential
 Represents the NetworkCredential for OAuth authentication. More...
 
class  OAuthToken
 Contains OAuth token data such like token value, token type, expiration date. More...
 
class  PageInfo
 Contains information about retrieved page when paging methods are used. More...
 
class  PipeliningStatus
 Defines pipelining status for mail client. More...
 
class  Proxy
 Base proxy client. More...
 
class  SecurityOptionsExtensions
 
class  SocksProxy
 SOCKS proxy client. Supported versions of the protocol are SOCKS4 and SOCKS5. More...
 
class  TokenProvider
 Class TokenProvider allows to retrieve access token for mail services. More...
 

Typedefs

using BindIPEndPointHandler = System::MulticastDelegate< System::SharedPtr< System::Net::IPEndPoint >(System::SharedPtr< System::Net::IPEndPoint >)>
 
using NetworkException = System::ExceptionWrapper< Details_NetworkException >
 

Enumerations

enum  AsyncCommandResults { AsyncCommandResults::Undefined, AsyncCommandResults::Successfully, AsyncCommandResults::Failed, AsyncCommandResults::Cancelled }
 The result of asynchronous command. More...
 
enum  ConnectionAsgmtType { ConnectionAsgmtType::UseMainOrDefault = 0, ConnectionAsgmtType::UseMain, ConnectionAsgmtType::UseDefault }
 Defines algorithm of connection allocation in multiple threads environment More...
 
enum  MultiConnectionMode { MultiConnectionMode::Enable, MultiConnectionMode::Disable }
 Enumerate modes which indicates how client has to use multiple connections for heavy loaded operations. More...
 
enum  CompressionType { CompressionType::NotDefined = -1, CompressionType::None = 0, CompressionType::Deflate = 1 }
 Compression types which are used by mail protocols More...
 
enum  ConnectionState { ConnectionState::Open = 1, ConnectionState::Broken = 16 }
 Describes the current state of the connection. More...
 
enum  PipeliningMode { PipeliningMode::Auto, PipeliningMode::Enabled, PipeliningMode::Disabled }
 Defines how mail client supports the pipelining More...
 
enum  HttpAuthenticationMethods : uint8_t { HttpAuthenticationMethods::NoAuthentication = 0x01, HttpAuthenticationMethods::Basic = 0x02 }
 The authentication methods supported by the HTTP proxy More...
 
enum  SocksAuthenticationMethods : uint8_t { SocksAuthenticationMethods::NoAuthentication = 0x01, SocksAuthenticationMethods::PlainText = 0x02 }
 The authentication methods supported by the SOCKS protocol More...
 
enum  SocksVersion : uint8_t { SocksVersion::SocksV4 = 4, SocksVersion::SocksV5 = 5 }
 Versions of the SOCKS protocol More...
 
enum  SecurityOptions {
  SecurityOptions::None = 1, SecurityOptions::SSLExplicit = 2, SecurityOptions::SSLImplicit = 4, SecurityOptions::SSLAuto = static_cast<int32_t>(SSLExplicit | SSLImplicit),
  SecurityOptions::Auto = static_cast<int32_t>(SSLExplicit | SSLImplicit | None)
}
 Security mode for a mail client More...
 
enum  TokenType { TokenType::AccessToken, TokenType::RefreshToken }
 Defines OAuth token types More...
 

Typedef Documentation

◆ BindIPEndPointHandler

using Aspose::Email::Clients::BindIPEndPointHandler = typedef System::MulticastDelegate<System::SharedPtr<System::Net::IPEndPoint>(System::SharedPtr<System::Net::IPEndPoint>)>

◆ NetworkException

using Aspose::Email::Clients::NetworkException = typedef System::ExceptionWrapper<Details_NetworkException>

Enumeration Type Documentation

◆ AsyncCommandResults

The result of asynchronous command.

Enumerator
Undefined 

Undefined result.

Successfully 

Successfully result.

Failed 

Failed result.

Cancelled 

The command is Cancelled.

◆ CompressionType

Compression types which are used by mail protocols

Enumerator
NotDefined 

Not defined

None 

Compression is not defined

Deflate 

Deflate algorithm is used

◆ ConnectionAsgmtType

Defines algorithm of connection allocation in multiple threads environment

Enumerator
UseMainOrDefault 

This mode uses by default in email clients.

Email client uses main connection for all operations from multiple threads if default connection hasn't been created, or connection hasnt been passed as method parameter explicitly. Main connection is connection which is created in the same time like email client. User can create default connections for threads with CreateConnection method. If default connection for thread is created, it's used implicitly for all methods of email client which are invoked in this thread. If default connection for thread is not created, main connection is used for all methods of email client which are invoked in this thread. User also can create independent connections not linked with threads (not default connections) with CreateConnection method. If user wants to use other connections (not main and not default) he has to pass this connection explicitly as parameter of a method which he wants to use. User can additionally create any number of connections. Default connection can be only one per thread.

Please note default connections works correctly if user uses Thread objects for multitasking programming. If user uses ConnectionPool or uses Task objects for multitasking programming this mode may lead to wrong behaviour of a programm because of thread may be reused in this case. To avoid this problem user has to manually dispose default conection (if he uses it) in the end of the code which executes in the thread.

UseMain 

Email client uses main connection for all operations from multiple threads. Main connection is connection which is created in the same time like email client. User cann't create default connections. User can create independent connections not linked with threads (not default connections) with CreateConnection method. If user wants to use other connections (not main and not default) he has to pass this connection explicitly as parameter of a method which he wants to use. User can additionally create any number of connections.

UseDefault 

Email client uses implicitly only default connections for all operations from multiple threads. Main connection is not used in this mode. If default connection hasn't been created for some thread (first invocation of email client method), email client creates default connection implicitly for thread before first operation is executed. User can't create default connections for threads with CreateConnection method because they are created automatically. When default connection for thread is created, it's used implicitly for all methods of email client which are invoked in this thread.read. User also can create independent connections not linked with threads (not default connections) with CreateConnection method. If user wants to use other connections (not main and not default) he has to pass this connection explicitly as parameter of a method which he wants to use. User can additionally create any number of connections. Default connection can be only one per thread.

Please note default connections works correctly if user uses Thread objects for multitasking programming. If user uses ConnectionPool or uses Task objects for multitasking programming this mode may lead to wrong behaviour of a programm because of thread may be reused in this case. To avoid this problem user has to manually dispose default conection in the end of the code which executes in the thread.

◆ ConnectionState

Describes the current state of the connection.

Enumerator
Open 

The connection is open.

Broken 

The connection is broken.

◆ HttpAuthenticationMethods

The authentication methods supported by the HTTP proxy

Enumerator
NoAuthentication 

No authentication

Basic 

Basic access authentication.

◆ MultiConnectionMode

Enumerate modes which indicates how client has to use multiple connections for heavy loaded operations.

Enumerator
Enable 

Multiple connections mode is supported

Disable 

Multiple connections mode is not supported

◆ PipeliningMode

Defines how mail client supports the pipelining

Enumerator
Auto 

Client enables pipelining mode in case if server declares that pipelining is supported

Enabled 

Pipelining mode is enabled.

Disabled 

Pipelining mode is disabled.

◆ SecurityOptions

Security mode for a mail client

Enumerator
None 

Connection is not secured.

SSLExplicit 

Uses the STARTTLS command to start SSL/TLS connection.

SSLImplicit 

Establishes a SSL/TLS connection first.

SSLAuto 

Uses SSL/TLS implicit or SSL/TLS explicit mode automatically.

Auto 

Auto selection mode

◆ SocksAuthenticationMethods

The authentication methods supported by the SOCKS protocol

Enumerator
NoAuthentication 

No authentication

PlainText 

Authenticates user with a user name and password. SOCKS5 server only

◆ SocksVersion

enum Aspose::Email::Clients::SocksVersion : uint8_t
strong

Versions of the SOCKS protocol

Enumerator
SocksV4 

SOCKS4 and SOCKS4a version SOCKS4a extends the SOCKS4 protocol to allow a client to specify a destination domain name rather than an IPv4 address; this is useful when the client itself cannot resolve the destination host's domain name to an IP address.

SocksV5 

SOCKS5 version The SOCKS5 protocol is defined in RFC 1928. It is an extension of the SOCKS4 protocol; it offers more choices for authentication, and adds support for IPv6 and UDP, the latter of which can be used for DNS lookups.

◆ TokenType

Defines OAuth token types

Enumerator
AccessToken 

Access token grants access to an API.

RefreshToken 

Refresh token allows to obtain new access tokens.