C# Class Microsoft.Protocols.TestSuites.MS_OXCMAPIHTTP.MS_OXCMAPIHTTPAdapter

Adapter class of MS-OXCMAPIHTTP.
Inheritance: Microsoft.Protocols.TestTools.ManagedAdapterBase, IMS_OXCMAPIHTTPAdapter
Show file Open project: OfficeDev/Interop-TestSuites

Public Methods

Method Description
Bind ( BindRequestBody bindRequestBody, int &responseCode ) : BindResponseBody

This method is used by the client to establish a Session Context with the Address Book Server.

CompareMinIds ( CompareMinIdsRequestBody compareMIdsRequestBody ) : CompareMinIdsResponseBody

This method is used by the client to compare the position of two objects in an address book container.

Connect ( string userName, string password, string userDN, CookieCollection &cookies, MailboxResponseBodyBase &responseBody, WebHeaderCollection &webHeaderCollection, HttpStatusCode &httpStatus ) : uint

This method is used to establish a Session Context with the server with specified user.

Disconnect ( MailboxResponseBodyBase &responseBody ) : uint

This method is used by the client to delete a Session Context with the server.

DnToMinId ( DNToMinIdRequestBody distinguishedNameToMIdRequestBody ) : DnToMinIdResponseBody

This method is used by the client to map a set of distinguished names to a set of Minimal Entry IDs.

Execute ( ExecuteRequestBody requestBody, CookieCollection cookies, WebHeaderCollection &httpHeaders, MailboxResponseBodyBase &responseBody, List &metatags ) : uint

This method is used by the client to send remote operation requests to the server with specified cookies.

GetAddressBookUrl ( GetAddressBookUrlRequestBody getAddressBookUrlRequestBody ) : GetAddressBookUrlResponseBody

This method is used by the client to get the URL of the specified address book server endpoint.

GetMailboxUrl ( GetMailboxUrlRequestBody getMailboxUrlRequestBody ) : GetMailboxUrlResponseBody

This method is used by the client to get the Uniform Resource Locator (URL) of the specified mailbox server endpoint.

GetMatches ( GetMatchesRequestBody getMatchesRequestBody ) : GetMatchesResponseBody

This method is used by the client to get an Explicit Table, in which the rows are determined by the specified criteria.

GetPropList ( GetPropListRequestBody getPropListRequestBody ) : GetPropListResponseBody

This method is used by the client to get a list of all of the properties that have values on an object.

GetProps ( GetPropsRequestBody getPropsRequestBody ) : GetPropsResponseBody

This method is used by the client to get specific properties on an object.

GetProps ( GetPropsRequestBody getPropsRequestBody, uint &responseCodeHeader ) : GetPropsResponseBody

This method is used by the client to get specific properties on an object.

GetSpecialTable ( GetSpecialTableRequestBody getSpecialTableRequestBody ) : GetSpecialTableResponseBody

This method is used by the client to get a special table, which can be either an address book hierarchy table or an address creation table.

GetTemplateInfo ( GetTemplateInfoRequestBody getTemplateInfoRequestBody ) : GetTemplateInfoResponseBody

This method is used by the client to get information about a template that is used by the address book.

Initialize ( ITestSite testSite ) : void

Overrides IAdapter's Initialize() and sets default protocol short name of the testSite.

ModLinkAtt ( ModLinkAttRequestBody modLinkAttRequestBody ) : ModLinkAttResponseBody

This method is used by the client to modify a specific property of a row in the address book.

ModProps ( ModPropsRequestBody modPropsRequestBody ) : ModPropsResponseBody

This method is used by the client to modify the specific properties of an Address Book object.

NotificationWait ( NotificationWaitRequestBody notificationWaitRequestBody, WebHeaderCollection &httpHeaders, MailboxResponseBodyBase &responseBody, List &metatags, string>.Dictionary &additionalHeader ) : uint

This method is used by the client to request that the server notify the client when a processing request that takes an extended amount of time completes.

PING ( ServerEndpoint endpoint, List &metatags, WebHeaderCollection &headers ) : uint

This method allows a client to determine whether a server's endpoint is reachable and operational.

QueryColumns ( QueryColumnsRequestBody queryColumnsRequestBody ) : QueryColumnsResponseBody

This method is used by the client to get a list of all the properties that exist in the address book.

QueryRows ( QueryRowsRequestBody queryRowsRequestBody ) : QueryRowsResponseBody

This method is used by the client to get a number of rows from the specified Explicit Table.

ResolveNames ( ResolveNamesRequestBody resolveNamesRequestBody ) : ResolveNamesResponseBody

This method is used by the client to perform ambiguous name resolution(ANR).

ResortRestriction ( ResortRestrictionRequestBody resortRestrictionRequestBody ) : ResortRestrictionResponseBody

This method is used by the client to sort the objects in the restricted address book container.

SeekEntries ( SeekEntriesRequestBody seekEntriesRequestBody ) : SeekEntriesResponseBody

This method is used by the client to search for and set the logical position in a specific table to the first entry greater than or equal to a specified value.

Unbind ( UnbindRequestBody unbindRequestBody ) : UnbindResponseBody

This method is used by the client to delete a Session Context with the Address Book Server.

UpdateStat ( UpdateStatRequestBody updateStatRequestBody ) : UpdateStatResponseBody

This method is used by the client to update the STAT structure to reflect the client's changes.

Private Methods

Method Description
GetEndpointUrl ( ) : void

Get the mailbox server endpoint URI and the address book server endpoint URI by Autodiscover.

ReadHttpResponse ( HttpWebResponse response ) : byte[]

Read the HTTP response and get the response bytes.

SendAddressBookRequest ( IRequestBody requestBody, RequestType requestType, bool cookieChange = true ) : CommonResponse

Send the request to address book server endpoint.

SendMAPIHttpRequest ( string userName, string password, IRequestBody requestBody, ServerEndpoint endpoint, CookieCollection cookies, WebHeaderCollection resquestHeaders, byte &rawBuffer ) : HttpWebResponse

This method is used to send the http request.

VerifyAdditionalHeaders ( string>.Dictionary additionalHeaders ) : void

Verify the requirements related to additional header.

VerifyAddressBookFlaggedPropertyValueStructure ( AddressBookFlaggedPropertyValue addressBookFlaggedPropertyValue ) : void

Verify the AddressBookFlaggedPropertyValue structure related requirements.

VerifyAddressBookPropertyRowStructure ( AddressBookPropertyRow addressBookPropertyRow ) : void

Verify the AddressBookPropertyRow structure related requirements.

VerifyAddressBookPropertyValueStructure ( AddressBookPropertyValue addressBookPropertyValue ) : void

Verify the AddressBookPropertyValue structure related requirements.

VerifyAddressBookTaggedPropertyValueStructure ( AddressBookTaggedPropertyValue addressBookTaggedPropertyValue ) : void

Verify the AddressBookTaggedPropertyValue structure related requirements.

VerifyAuthentication ( HttpWebResponse response ) : void

Verify the requirements related to authentication.

VerifyAutoDiscover ( HttpStatusCode httpStatusCode, ServerEndpoint serverEndpoint ) : void

Verify the requirements related to AutoDiscover.

VerifyBindResponseBody ( BindResponseBody bindResponseBody ) : void

Verify the Bind response body related requirements.

VerifyComapreMinIdsResponsebody ( CompareMinIdsResponseBody compareMinIdsResponseBody ) : void

Verify the ComapreMinIds response body related requirements.

VerifyConnectOrBindResponse ( WebHeaderCollection headers ) : void

Verify the Connect or Bind response related requirements.

VerifyConnectResponse ( HttpWebResponse httpWebResponse ) : void

Verify the Connect response related requirements.

VerifyConnectSuccessResponseBody ( ConnectSuccessResponseBody connectSuccessResponseBody ) : void

Verify the Connect success response body related requirements.

VerifyContentTypeHeader ( WebHeaderCollection headers ) : void

Verify the requirements related to Content-Type header.

VerifyDisconnectResponse ( HttpWebResponse httpWebResponse ) : void

Verify the Disconnect response related requirements.

VerifyDisconnectSuccessResponseBody ( DisconnectSuccessResponseBody disconnectSuccessResponseBody ) : void

Verify the Disconnect success response body related requirements.

VerifyDnToMinIdResponseBody ( DnToMinIdResponseBody responseBodyDnToMinId ) : void

Verify the DnToMinId response body related requirements.

VerifyExecuteSuccessResponseBody ( ExecuteSuccessResponseBody executeSuccessResponseBody ) : void

Verify the Execute success response body related requirements.

VerifyGetAddressBookUrlResponseBody ( GetAddressBookUrlResponseBody getAddressBookUrlResponseBody ) : void

Verify GetAddressBookUrl response body related requirements

VerifyGetMailboxUrlResponseBody ( GetMailboxUrlResponseBody getMailboxUrlResponseBody ) : void

Verify the GetMailboxUrl response body related requirements.

VerifyGetMatchsResponseBody ( GetMatchesRequestBody requesutBody, GetMatchesResponseBody responseBody ) : void

Verify the requirements related to GetMatches request type response body.

VerifyGetPropListResponseBody ( GetPropListResponseBody getPropListResponseBody ) : void

Verify the requirements related with GetPropList request type response body.

VerifyGetPropsResponseBody ( GetPropsResponseBody getPropsResponseBody ) : void

Verify the requirements related to GetProps request type response body.

VerifyGetSpecialTableResponseBody ( GetSpecialTableResponseBody getSpecialTableResponseBody ) : void

Verify the GetSpecialTable response body related requirements.

VerifyGetTemplateInfoResponseBody ( GetTemplateInfoResponseBody getTemplateInfoResponseBody ) : void

Verify the GetTemplateInfo response body related requirements.

VerifyHTTPHeaders ( WebHeaderCollection headers ) : void

Verify the requirements related to HTTP header.

VerifyHTTPS ( HttpWebResponse response ) : void

Verify the requirements related to HTTPS transport.

VerifyLargePropertyTagArrayStructure ( LargePropertyTagArray largePropTagArray ) : void

Verify the LargePropTagArray structure related requirements.

VerifyModLinkAttResponseBody ( ModLinkAttResponseBody modLinkAttResponseBody ) : void

Verify the ModLinkAtt response body related requirements.

VerifyModPropsResponseBody ( ModPropsResponseBody modPropsResponseBody ) : void

Verify the requirements related to ModProps request type response body.

VerifyNotificationWaitRequestType ( WebHeaderCollection headers ) : void

Verify the NotificationWait Request Types related requirements.

VerifyNotificationWaitSuccessResponseBody ( NotificationWaitSuccessResponseBody notificationWaitSuccessResponseBody ) : void

Verify the NotificationWait success response body related requirements.

VerifyPINGRequestType ( CommonResponse commonResponse, ServerEndpoint endpoint, uint responseCode ) : void

Verify the PING request type related requirements.

VerifyQueryColumnsResponseBody ( QueryColumnsResponseBody queryColumnsResponseBody ) : void

Verify the requirements related to QueryColumns request type response body.

VerifyQueryRowsResponseBody ( QueryRowsResponseBody queryRowsResponseBody, QueryRowsRequestBody queryRowsRequestBody ) : void

Verify the QueryRows request type response body related requirements.

VerifyRequestTypesForAddressBookServerEndpoint ( WebHeaderCollection headers, CommonResponse commonResponse ) : void

Verify the request types for address book server endpoint related requirements.

VerifyRequestTypesForMailboxServerEndpoint ( WebHeaderCollection headers, CommonResponse commonResponse ) : void

Verify the Request Types For Mailbox Server Endpoint related requirements.

VerifyResolveNamesResponseBody ( ResolveNamesResponseBody resolveNamesResponseBody ) : void

Verify the requirements related to ResolveNames request type response body.

VerifyResortRestrictionResponseBody ( ResortRestrictionResponseBody resortRestrictionResponseBody ) : void

Verify the ResortRestriction response body related requirements.

VerifyRespondingToAllRequestTypeRequests ( HttpWebResponse response, CommonResponse commonResponse, uint responseCode ) : void

Verify requirements related to the responding of all request type.

VerifyResponseMetaTags ( List metaTags ) : void

Verify the Response Meta-Tags related requirements.

VerifySeekEntriesResponseBody ( SeekEntriesResponseBody responseBody ) : void

Verify the requirements related to SeekEntries request type response body.

VerifyUnbindResponseBody ( UnbindResponseBody unbindResponseBody ) : void

Verify the Unbind response body related requirements.

VerifyUpdateStatResponseBody ( UpdateStatResponseBody updateStatResponseBody ) : void

Verify the UpdateStat response body related requirements.

Method Details

Bind() public method

This method is used by the client to establish a Session Context with the Address Book Server.
public Bind ( BindRequestBody bindRequestBody, int &responseCode ) : BindResponseBody
bindRequestBody BindRequestBody The bind request type request body.
responseCode int The value of X-ResponseCode header of the bind response.
return BindResponseBody

CompareMinIds() public method

This method is used by the client to compare the position of two objects in an address book container.
public CompareMinIds ( CompareMinIdsRequestBody compareMIdsRequestBody ) : CompareMinIdsResponseBody
compareMIdsRequestBody CompareMinIdsRequestBody The CompareMinIds request type request body.
return CompareMinIdsResponseBody

Connect() public method

This method is used to establish a Session Context with the server with specified user.
public Connect ( string userName, string password, string userDN, CookieCollection &cookies, MailboxResponseBodyBase &responseBody, WebHeaderCollection &webHeaderCollection, HttpStatusCode &httpStatus ) : uint
userName string The UserName used to connect with server.
password string The password used to connect with server.
userDN string The UserESSDN used to connect with server.
cookies System.Net.CookieCollection Cookies used to identify the Session Context.
responseBody Microsoft.Protocols.TestSuites.Common.MailboxResponseBodyBase The response body of the Connect request type.
webHeaderCollection System.Net.WebHeaderCollection The web headers of the Connect request type.
httpStatus HttpStatusCode The HTTP call response status.
return uint

Disconnect() public method

This method is used by the client to delete a Session Context with the server.
public Disconnect ( MailboxResponseBodyBase &responseBody ) : uint
responseBody Microsoft.Protocols.TestSuites.Common.MailboxResponseBodyBase The response body of the Disconnect request type.
return uint

DnToMinId() public method

This method is used by the client to map a set of distinguished names to a set of Minimal Entry IDs.
public DnToMinId ( DNToMinIdRequestBody distinguishedNameToMIdRequestBody ) : DnToMinIdResponseBody
distinguishedNameToMIdRequestBody DNToMinIdRequestBody The DnToMinId request type request body.
return DnToMinIdResponseBody

Execute() public method

This method is used by the client to send remote operation requests to the server with specified cookies.
public Execute ( ExecuteRequestBody requestBody, CookieCollection cookies, WebHeaderCollection &httpHeaders, MailboxResponseBodyBase &responseBody, List &metatags ) : uint
requestBody Microsoft.Protocols.TestSuites.Common.ExecuteRequestBody The request body of the Execute request type.
cookies System.Net.CookieCollection Cookies used to identify the Session Context.
httpHeaders System.Net.WebHeaderCollection The request and response header of the Execute request type.
responseBody Microsoft.Protocols.TestSuites.Common.MailboxResponseBodyBase The response body of the Execute request type.
metatags List The meta tags in the response body buffer.
return uint

GetAddressBookUrl() public method

This method is used by the client to get the URL of the specified address book server endpoint.
public GetAddressBookUrl ( GetAddressBookUrlRequestBody getAddressBookUrlRequestBody ) : GetAddressBookUrlResponseBody
getAddressBookUrlRequestBody GetAddressBookUrlRequestBody The GetAddressBookUrl request type request body.
return GetAddressBookUrlResponseBody

GetMailboxUrl() public method

This method is used by the client to get the Uniform Resource Locator (URL) of the specified mailbox server endpoint.
public GetMailboxUrl ( GetMailboxUrlRequestBody getMailboxUrlRequestBody ) : GetMailboxUrlResponseBody
getMailboxUrlRequestBody GetMailboxUrlRequestBody The GetMailboxUrl request type request body.
return GetMailboxUrlResponseBody

GetMatches() public method

This method is used by the client to get an Explicit Table, in which the rows are determined by the specified criteria.
public GetMatches ( GetMatchesRequestBody getMatchesRequestBody ) : GetMatchesResponseBody
getMatchesRequestBody GetMatchesRequestBody The GetMatches request type request body.
return GetMatchesResponseBody

GetPropList() public method

This method is used by the client to get a list of all of the properties that have values on an object.
public GetPropList ( GetPropListRequestBody getPropListRequestBody ) : GetPropListResponseBody
getPropListRequestBody GetPropListRequestBody The GetPropList request type request body.
return GetPropListResponseBody

GetProps() public method

This method is used by the client to get specific properties on an object.
public GetProps ( GetPropsRequestBody getPropsRequestBody ) : GetPropsResponseBody
getPropsRequestBody GetPropsRequestBody The GetProps request type request body.
return GetPropsResponseBody

GetProps() public method

This method is used by the client to get specific properties on an object.
public GetProps ( GetPropsRequestBody getPropsRequestBody, uint &responseCodeHeader ) : GetPropsResponseBody
getPropsRequestBody GetPropsRequestBody The GetProps request type request body.
responseCodeHeader uint The value of X-ResponseCode header
return GetPropsResponseBody

GetSpecialTable() public method

This method is used by the client to get a special table, which can be either an address book hierarchy table or an address creation table.
public GetSpecialTable ( GetSpecialTableRequestBody getSpecialTableRequestBody ) : GetSpecialTableResponseBody
getSpecialTableRequestBody GetSpecialTableRequestBody The GetSpecialTable request type request body.
return GetSpecialTableResponseBody

GetTemplateInfo() public method

This method is used by the client to get information about a template that is used by the address book.
public GetTemplateInfo ( GetTemplateInfoRequestBody getTemplateInfoRequestBody ) : GetTemplateInfoResponseBody
getTemplateInfoRequestBody GetTemplateInfoRequestBody The GetTemplateInfo request type request body.
return GetTemplateInfoResponseBody

Initialize() public method

Overrides IAdapter's Initialize() and sets default protocol short name of the testSite.
public Initialize ( ITestSite testSite ) : void
testSite ITestSite Pass ITestSite into adapter and make adapter can use ITestSite's function.
return void

ModLinkAtt() public method

This method is used by the client to modify a specific property of a row in the address book.
public ModLinkAtt ( ModLinkAttRequestBody modLinkAttRequestBody ) : ModLinkAttResponseBody
modLinkAttRequestBody ModLinkAttRequestBody The ModLinkAtt request type request body.
return ModLinkAttResponseBody

ModProps() public method

This method is used by the client to modify the specific properties of an Address Book object.
public ModProps ( ModPropsRequestBody modPropsRequestBody ) : ModPropsResponseBody
modPropsRequestBody ModPropsRequestBody The ModProps request type request body.
return ModPropsResponseBody

NotificationWait() public method

This method is used by the client to request that the server notify the client when a processing request that takes an extended amount of time completes.
public NotificationWait ( NotificationWaitRequestBody notificationWaitRequestBody, WebHeaderCollection &httpHeaders, MailboxResponseBodyBase &responseBody, List &metatags, string>.Dictionary &additionalHeader ) : uint
notificationWaitRequestBody NotificationWaitRequestBody The request body of the NotificationWait request type.
httpHeaders System.Net.WebHeaderCollection The request and response header of the NotificationWait request type.
responseBody Microsoft.Protocols.TestSuites.Common.MailboxResponseBodyBase The response body of the NotificationWait request type.
metatags List The meta tags of the NotificationWait request type.
additionalHeader string>.Dictionary The additional headers in the Notification request type response.
return uint

PING() public method

This method allows a client to determine whether a server's endpoint is reachable and operational.
public PING ( ServerEndpoint endpoint, List &metatags, WebHeaderCollection &headers ) : uint
endpoint ServerEndpoint The endpoint used by PING request.
metatags List The meta tags in the response body of the Ping request type.
headers System.Net.WebHeaderCollection The request and response header of the PING request type.
return uint

QueryColumns() public method

This method is used by the client to get a list of all the properties that exist in the address book.
public QueryColumns ( QueryColumnsRequestBody queryColumnsRequestBody ) : QueryColumnsResponseBody
queryColumnsRequestBody QueryColumnsRequestBody The QueryColumns request type request body.
return QueryColumnsResponseBody

QueryRows() public method

This method is used by the client to get a number of rows from the specified Explicit Table.
public QueryRows ( QueryRowsRequestBody queryRowsRequestBody ) : QueryRowsResponseBody
queryRowsRequestBody QueryRowsRequestBody The QueryRows request type request body.
return QueryRowsResponseBody

ResolveNames() public method

This method is used by the client to perform ambiguous name resolution(ANR).
public ResolveNames ( ResolveNamesRequestBody resolveNamesRequestBody ) : ResolveNamesResponseBody
resolveNamesRequestBody ResolveNamesRequestBody The ResolveNames request type request body.
return ResolveNamesResponseBody

ResortRestriction() public method

This method is used by the client to sort the objects in the restricted address book container.
public ResortRestriction ( ResortRestrictionRequestBody resortRestrictionRequestBody ) : ResortRestrictionResponseBody
resortRestrictionRequestBody ResortRestrictionRequestBody The ResortRestriction request type request body.
return ResortRestrictionResponseBody

SeekEntries() public method

This method is used by the client to search for and set the logical position in a specific table to the first entry greater than or equal to a specified value.
public SeekEntries ( SeekEntriesRequestBody seekEntriesRequestBody ) : SeekEntriesResponseBody
seekEntriesRequestBody SeekEntriesRequestBody The SeekEntries request type request body.
return SeekEntriesResponseBody

Unbind() public method

This method is used by the client to delete a Session Context with the Address Book Server.
public Unbind ( UnbindRequestBody unbindRequestBody ) : UnbindResponseBody
unbindRequestBody UnbindRequestBody The unbind request type request body.
return UnbindResponseBody

UpdateStat() public method

This method is used by the client to update the STAT structure to reflect the client's changes.
public UpdateStat ( UpdateStatRequestBody updateStatRequestBody ) : UpdateStatResponseBody
updateStatRequestBody UpdateStatRequestBody The UpdateStat request type request body.
return UpdateStatResponseBody