3.1.4.7 ServerTime Subrequest

This operation is used to retrieve the server time, which is expressed as the number of ticks (that is, the number of 100-nanosecond intervals) that have elapsed since 00:00:00, January 1, 0001. The server time SHOULD<54> be expressed in Coordinated Universal Time (UTC).

The protocol client sends a ServerTime SubRequest message, which is of ServerTimeSubRequestType as specified in section 2.3.1.17. The protocol server responds with a ServerTime SubResponse message, which is of type ServerTimeSubResponseType as specified in section 2.3.1.19. This is done as follows:

  • The protocol client prepares a request containing a URL for the file, a unique request token, and one or more SubRequest elements, as defined in section 2.2.3.2 and section 2.2.3.8. The SubRequest element is of type "ServerTime".

  • The protocol server receives the request and gets the server time information from the server. The requested server time information is prepared as a response and sent back to the protocol client.

The Response element is defined in section 2.2.3.5, and the SubResponse element is defined in section 2.2.3.10. The ServerTimeSubResponseDataType defines the type of the SubResponseData element that is sent in a server time SubResponse element. The ServerTimeSubResponseDataType is defined in section 2.3.1.18. The protocol server sends the server time as a ServerTime attribute in the ServerTime SubResponseData element. The ServerTime attribute is defined in section 2.3.1.18.

The protocol returns results based on the following conditions:

  • If the processing of the ServerTime subrequest by the server fails to get the server time or encountered an unknown exception, the protocol server returns an error code value set to "SubRequestFail".

  • Otherwise, the protocol server sets the error code value to "Success" to indicate success in processing the ServerTime subrequest.