Represents an abstract binding to an Autodiscover Service. More...

Inherits Object.

Inherited by Aspose::Email::Clients::Exchange::AutodiscoverService.

Public Types

using CustomXmlSerializationDelegate = System::MulticastDelegate< void(System::SharedPtr< System::Xml::XmlWriter >)>
 Defines a delegate that is used to allow applications to emit custom XML when SOAP requests are sent to Exchange. More...
 

Public Member Functions

System::String get_LogFileName () const
 Gets log file name More...
 
void set_LogFileName (System::String value)
 Sets log file name More...
 
bool get_UseDateInLogFileName () const
 Gets value which indicates if date has to be used in log file name. More...
 
void set_UseDateInLogFileName (bool value)
 Sets value which indicates if date has to be used in log file name. More...
 
System::SharedPtr< Aspose::Email::Tools::Logging::Loggerget_Logger ()
 Diagnostic logger More...
 
System::SharedPtr< System::Net::CookieContainer > get_CookieContainer () const
 Gets the cookie container. More...
 
void set_CookieContainer (System::SharedPtr< System::Net::CookieContainer > value)
 Sets the cookie container. More...
 
System::SharedPtr< Aspose::Email::Common::TimeZone::Zone > get_TimeZone () const
 Gets the time zone this service is scoped to. More...
 
bool get_SendClientLatencies () const
 Gets a value indicating whether client latency info is push to server. More...
 
void set_SendClientLatencies (bool value)
 Sets a value indicating whether client latency info is push to server. More...
 
System::SharedPtr< System::Net::ICredentials > get_Credentials () const
 Gets the credentials used to authenticate with the Exchange Web Services. Setting the Credentials property automatically sets the UseDefaultCredentials to false. More...
 
void set_Credentials (System::SharedPtr< System::Net::ICredentials > value)
 Sets the credentials used to authenticate with the Exchange Web Services. Setting the Credentials property automatically sets the UseDefaultCredentials to false. More...
 
bool get_UseDefaultCredentials () const
 Gets a value indicating whether the credentials of the user currently logged into Windows should be used to authenticate with the Exchange Web Services. Setting UseDefaultCredentials to true automatically sets the Credentials property to null. More...
 
void set_UseDefaultCredentials (bool value)
 Sets a value indicating whether the credentials of the user currently logged into Windows should be used to authenticate with the Exchange Web Services. Setting UseDefaultCredentials to true automatically sets the Credentials property to null. More...
 
int32_t get_Timeout () const
 Gets the timeout used when sending HTTP requests and when receiving HTTP responses, in milliseconds. Defaults to 100000. More...
 
void set_Timeout (int32_t value)
 Sets the timeout used when sending HTTP requests and when receiving HTTP responses, in milliseconds. Defaults to 100000. More...
 
bool get_PreAuthenticate () const
 Gets a value that indicates whether HTTP pre-authentication should be performed. More...
 
void set_PreAuthenticate (bool value)
 Sets a value that indicates whether HTTP pre-authentication should be performed. More...
 
bool get_AcceptGzipEncoding () const
 Gets a value indicating whether GZip compression encoding should be accepted. More...
 
void set_AcceptGzipEncoding (bool value)
 Sets a value indicating whether GZip compression encoding should be accepted. More...
 
WebService::ExchangeVersion get_RequestedServerVersion () const
 Gets the requested server version. More...
 
System::String get_UserAgent () const
 Gets the user agent. More...
 
void set_UserAgent (System::String value)
 Sets the user agent. More...
 
System::SharedPtr< WebService::Schema_2016::ServerVersionInfo > get_ServerInfo () const
 Gets information associated with the server that processed the last request. Will be null if no requests have been processed. More...
 
void set_ServerInfo (System::SharedPtr< WebService::Schema_2016::ServerVersionInfo > value)
 Gets information associated with the server that processed the last request. Will be null if no requests have been processed. More...
 
System::SharedPtr< System::Net::IWebProxy > get_WebProxy () const
 Gets the web proxy that should be used when sending requests to EWS. Set this property to null to use the default web proxy. More...
 
void set_WebProxy (System::SharedPtr< System::Net::IWebProxy > value)
 Sets the web proxy that should be used when sending requests to EWS. Set this property to null to use the default web proxy. More...
 
bool get_KeepAlive () const
 Gets if the request to the internet resource should contain a Connection HTTP header with the value Keep-alive More...
 
void set_KeepAlive (bool value)
 Sets if the request to the internet resource should contain a Connection HTTP header with the value Keep-alive More...
 
System::String get_ConnectionGroupName () const
 Gets the name of the connection group for the request. More...
 
void set_ConnectionGroupName (System::String value)
 Sets the name of the connection group for the request. More...
 
System::String get_ClientRequestId () const
 Gets the request id for the request. More...
 
void set_ClientRequestId (System::String value)
 Sets the request id for the request. More...
 
bool get_ReturnClientRequestId () const
 Gets a flag to indicate whether the client requires the server side to return the request id. More...
 
void set_ReturnClientRequestId (bool value)
 Sets a flag to indicate whether the client requires the server side to return the request id. More...
 
System::SharedPtr< System::Collections::Generic::IDictionary< System::String, System::String > > get_HttpHeaders () const
 Gets a collection of HTTP headers that will be sent with each request to EWS. More...
 
System::SharedPtr< System::Collections::Generic::IDictionary< System::String, System::String > > get_HttpResponseHeaders () const
 Gets a collection of HTTP headers from the last response. More...
 
bool get_SuppressXmlVersionHeader () const
 For testing: suppresses generation of the SOAP version header. More...
 
void set_SuppressXmlVersionHeader (bool value)
 For testing: suppresses generation of the SOAP version header. More...
 
void DoOnSerializeCustomSoapHeaders (System::SharedPtr< System::Xml::XmlWriter > writer)
 Calls the custom SOAP header serialization event handlers, if defined. More...
 
System::SharedPtr< System::Net::HttpWebRequest > PrepareHttpWebRequestForUrl (System::SharedPtr< System::Uri > url, bool acceptGzipEncoding, bool allowAutoRedirect)
 Creates an HttpWebRequest instance and initializes it with the appropriate parameters, based on the configuration of this service object. More...
 
void SaveHttpResponseHeaders (System::SharedPtr< System::Net::WebHeaderCollection > headers)
 Save the HTTP response headers. More...
 
void InternalProcessHttpErrorResponse (System::SharedPtr< System::Net::HttpWebResponse > httpWebResponse, System::Net::WebException webException)
 Processes an HTTP error response More...
 
void Log (System::String message)
 Log message. More...
 
void Log (System::SharedPtr< System::Net::HttpWebRequest > request)
 Log message. More...
 
void Log (System::SharedPtr< System::Net::HttpWebResponse > webResponse)
 
void Log (System::SharedPtr< System::Net::HttpWebResponse > webResponse, System::SharedPtr< System::IO::MemoryStream > memoryStream)
 
void Log (System::SharedPtr< System::IO::MemoryStream > stream)
 
void initializeLogger ()
 

Static Public Member Functions

static System::ArrayPtr< uint8_t > get_SessionKey ()
 Gets the session key. More...
 

Public Attributes

System::Event< void(System::SharedPtr< System::Xml::XmlWriter >)> OnSerializeCustomSoapHeaders
 Provides an event that applications can implement to emit custom SOAP headers in requests that are sent to Exchange. More...
 

Static Public Attributes

static const System::Net::HttpStatusCode AccountIsLocked
 Special HTTP status code that indicates that the account is locked. More...
 

Protected Member Functions

 AutodiscoverServiceBase ()
 Initializes a new instance of the AutodiscoverServiceBase class. More...
 
 AutodiscoverServiceBase (WebService::ExchangeVersion requestedServerVersion)
 Initializes a new instance of the AutodiscoverServiceBase class. More...
 

Friends

class Aspose::Email::Clients::Exchange::AutodiscoverRequest
 
class Aspose::Email::Clients::Exchange::AutodiscoverService
 
class Aspose::Email::Clients::Exchange::AutodiscoverXmlWriter
 
class Aspose::Email::Clients::Exchange::GetUserSettingsRequest
 

Detailed Description

Represents an abstract binding to an Autodiscover Service.

Member Typedef Documentation

◆ CustomXmlSerializationDelegate

using Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::CustomXmlSerializationDelegate = System::MulticastDelegate<void(System::SharedPtr<System::Xml::XmlWriter>)>

Defines a delegate that is used to allow applications to emit custom XML when SOAP requests are sent to Exchange.

Parameters
writerThe XmlWriter to use to emit the custom XML.

Constructor & Destructor Documentation

◆ AutodiscoverServiceBase() [1/2]

Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::AutodiscoverServiceBase ( )
protected

Initializes a new instance of the AutodiscoverServiceBase class.

◆ AutodiscoverServiceBase() [2/2]

Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::AutodiscoverServiceBase ( WebService::ExchangeVersion  requestedServerVersion)
protected

Initializes a new instance of the AutodiscoverServiceBase class.

Parameters
requestedServerVersionThe requested server version.

Member Function Documentation

◆ DoOnSerializeCustomSoapHeaders()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::DoOnSerializeCustomSoapHeaders ( System::SharedPtr< System::Xml::XmlWriter >  writer)

Calls the custom SOAP header serialization event handlers, if defined.

Parameters
writerThe XmlWriter to which to write the custom SOAP headers.

◆ get_AcceptGzipEncoding()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_AcceptGzipEncoding ( ) const

Gets a value indicating whether GZip compression encoding should be accepted.

This value will tell the server that the client is able to handle GZip compression encoding. The server will only send Gzip compressed content if it has been configured to do so.

◆ get_ClientRequestId()

System::String Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_ClientRequestId ( ) const

Gets the request id for the request.

◆ get_ConnectionGroupName()

System::String Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_ConnectionGroupName ( ) const

Gets the name of the connection group for the request.

◆ get_CookieContainer()

System::SharedPtr<System::Net::CookieContainer> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_CookieContainer ( ) const

Gets the cookie container.

The cookie container.

◆ get_Credentials()

System::SharedPtr<System::Net::ICredentials> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_Credentials ( ) const

Gets the credentials used to authenticate with the Exchange Web Services. Setting the Credentials property automatically sets the UseDefaultCredentials to false.

◆ get_HttpHeaders()

System::SharedPtr<System::Collections::Generic::IDictionary<System::String, System::String> > Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_HttpHeaders ( ) const

Gets a collection of HTTP headers that will be sent with each request to EWS.

◆ get_HttpResponseHeaders()

System::SharedPtr<System::Collections::Generic::IDictionary<System::String, System::String> > Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_HttpResponseHeaders ( ) const

Gets a collection of HTTP headers from the last response.

◆ get_KeepAlive()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_KeepAlive ( ) const

Gets if the request to the internet resource should contain a Connection HTTP header with the value Keep-alive

◆ get_LogFileName()

System::String Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_LogFileName ( ) const

Gets log file name

◆ get_Logger()

System::SharedPtr<Aspose::Email::Tools::Logging::Logger> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_Logger ( )

Diagnostic logger

◆ get_PreAuthenticate()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_PreAuthenticate ( ) const

Gets a value that indicates whether HTTP pre-authentication should be performed.

◆ get_RequestedServerVersion()

WebService::ExchangeVersion Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_RequestedServerVersion ( ) const

Gets the requested server version.

The requested server version.

◆ get_ReturnClientRequestId()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_ReturnClientRequestId ( ) const

Gets a flag to indicate whether the client requires the server side to return the request id.

◆ get_SendClientLatencies()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_SendClientLatencies ( ) const

Gets a value indicating whether client latency info is push to server.

◆ get_ServerInfo()

System::SharedPtr<WebService::Schema_2016::ServerVersionInfo> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_ServerInfo ( ) const

Gets information associated with the server that processed the last request. Will be null if no requests have been processed.

◆ get_SessionKey()

static System::ArrayPtr<uint8_t> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_SessionKey ( )
static

Gets the session key.

◆ get_SuppressXmlVersionHeader()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_SuppressXmlVersionHeader ( ) const

For testing: suppresses generation of the SOAP version header.

◆ get_Timeout()

int32_t Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_Timeout ( ) const

Gets the timeout used when sending HTTP requests and when receiving HTTP responses, in milliseconds. Defaults to 100000.

◆ get_TimeZone()

System::SharedPtr<Aspose::Email::Common::TimeZone::Zone> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_TimeZone ( ) const

Gets the time zone this service is scoped to.

◆ get_UseDateInLogFileName()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_UseDateInLogFileName ( ) const

Gets value which indicates if date has to be used in log file name.

◆ get_UseDefaultCredentials()

bool Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_UseDefaultCredentials ( ) const

Gets a value indicating whether the credentials of the user currently logged into Windows should be used to authenticate with the Exchange Web Services. Setting UseDefaultCredentials to true automatically sets the Credentials property to null.

◆ get_UserAgent()

System::String Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_UserAgent ( ) const

Gets the user agent.

The user agent.

◆ get_WebProxy()

System::SharedPtr<System::Net::IWebProxy> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::get_WebProxy ( ) const

Gets the web proxy that should be used when sending requests to EWS. Set this property to null to use the default web proxy.

◆ initializeLogger()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::initializeLogger ( )

◆ InternalProcessHttpErrorResponse()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::InternalProcessHttpErrorResponse ( System::SharedPtr< System::Net::HttpWebResponse >  httpWebResponse,
System::Net::WebException  webException 
)

Processes an HTTP error response

Parameters
httpWebResponseThe HTTP web response.
webExceptionThe web exception.

This method doesn't handle 500 ISE errors. This is handled by the caller since 500 ISE typically indicates that a SOAP fault has occurred and the handling of a SOAP fault is currently service specific.

◆ Log() [1/5]

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::Log ( System::SharedPtr< System::IO::MemoryStream >  stream)

◆ Log() [2/5]

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::Log ( System::SharedPtr< System::Net::HttpWebRequest >  request)

Log message.

◆ Log() [3/5]

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::Log ( System::SharedPtr< System::Net::HttpWebResponse >  webResponse)

◆ Log() [4/5]

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::Log ( System::SharedPtr< System::Net::HttpWebResponse >  webResponse,
System::SharedPtr< System::IO::MemoryStream >  memoryStream 
)

◆ Log() [5/5]

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::Log ( System::String  message)

Log message.

◆ PrepareHttpWebRequestForUrl()

System::SharedPtr<System::Net::HttpWebRequest> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::PrepareHttpWebRequestForUrl ( System::SharedPtr< System::Uri >  url,
bool  acceptGzipEncoding,
bool  allowAutoRedirect 
)

Creates an HttpWebRequest instance and initializes it with the appropriate parameters, based on the configuration of this service object.

Parameters
urlThe URL that the HttpWebRequest should target.
acceptGzipEncodingIf true, ask server for GZip compressed content.
allowAutoRedirectIf true, redirection responses will be automatically followed.
Returns
A initialized instance of HttpWebRequest.

◆ SaveHttpResponseHeaders()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::SaveHttpResponseHeaders ( System::SharedPtr< System::Net::WebHeaderCollection >  headers)

Save the HTTP response headers.

Parameters
headersThe response headers

◆ set_AcceptGzipEncoding()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_AcceptGzipEncoding ( bool  value)

Sets a value indicating whether GZip compression encoding should be accepted.

This value will tell the server that the client is able to handle GZip compression encoding. The server will only send Gzip compressed content if it has been configured to do so.

◆ set_ClientRequestId()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_ClientRequestId ( System::String  value)

Sets the request id for the request.

◆ set_ConnectionGroupName()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_ConnectionGroupName ( System::String  value)

Sets the name of the connection group for the request.

◆ set_CookieContainer()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_CookieContainer ( System::SharedPtr< System::Net::CookieContainer >  value)

Sets the cookie container.

The cookie container.

◆ set_Credentials()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_Credentials ( System::SharedPtr< System::Net::ICredentials >  value)

Sets the credentials used to authenticate with the Exchange Web Services. Setting the Credentials property automatically sets the UseDefaultCredentials to false.

◆ set_KeepAlive()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_KeepAlive ( bool  value)

Sets if the request to the internet resource should contain a Connection HTTP header with the value Keep-alive

◆ set_LogFileName()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_LogFileName ( System::String  value)

Sets log file name

◆ set_PreAuthenticate()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_PreAuthenticate ( bool  value)

Sets a value that indicates whether HTTP pre-authentication should be performed.

◆ set_ReturnClientRequestId()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_ReturnClientRequestId ( bool  value)

Sets a flag to indicate whether the client requires the server side to return the request id.

◆ set_SendClientLatencies()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_SendClientLatencies ( bool  value)

Sets a value indicating whether client latency info is push to server.

◆ set_ServerInfo()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_ServerInfo ( System::SharedPtr< WebService::Schema_2016::ServerVersionInfo >  value)

Gets information associated with the server that processed the last request. Will be null if no requests have been processed.

◆ set_SuppressXmlVersionHeader()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_SuppressXmlVersionHeader ( bool  value)

For testing: suppresses generation of the SOAP version header.

◆ set_Timeout()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_Timeout ( int32_t  value)

Sets the timeout used when sending HTTP requests and when receiving HTTP responses, in milliseconds. Defaults to 100000.

◆ set_UseDateInLogFileName()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_UseDateInLogFileName ( bool  value)

Sets value which indicates if date has to be used in log file name.

◆ set_UseDefaultCredentials()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_UseDefaultCredentials ( bool  value)

Sets a value indicating whether the credentials of the user currently logged into Windows should be used to authenticate with the Exchange Web Services. Setting UseDefaultCredentials to true automatically sets the Credentials property to null.

◆ set_UserAgent()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_UserAgent ( System::String  value)

Sets the user agent.

The user agent.

◆ set_WebProxy()

void Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::set_WebProxy ( System::SharedPtr< System::Net::IWebProxy >  value)

Sets the web proxy that should be used when sending requests to EWS. Set this property to null to use the default web proxy.

Friends And Related Function Documentation

◆ Aspose::Email::Clients::Exchange::AutodiscoverRequest

friend class Aspose::Email::Clients::Exchange::AutodiscoverRequest
friend

◆ Aspose::Email::Clients::Exchange::AutodiscoverService

◆ Aspose::Email::Clients::Exchange::AutodiscoverXmlWriter

friend class Aspose::Email::Clients::Exchange::AutodiscoverXmlWriter
friend

◆ Aspose::Email::Clients::Exchange::GetUserSettingsRequest

friend class Aspose::Email::Clients::Exchange::GetUserSettingsRequest
friend

Member Data Documentation

◆ AccountIsLocked

const System::Net::HttpStatusCode Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::AccountIsLocked
static

Special HTTP status code that indicates that the account is locked.

◆ OnSerializeCustomSoapHeaders

System::Event<void(System::SharedPtr<System::Xml::XmlWriter>)> Aspose::Email::Clients::Exchange::AutodiscoverServiceBase::OnSerializeCustomSoapHeaders

Provides an event that applications can implement to emit custom SOAP headers in requests that are sent to Exchange.