Export (0) Print
Expand All

3.1.4.5 GetRevisionIdList

A DSS calls the GetRevisionIdList method to get the revision IDs for new updates. The DSS provides filters to be used to prune the list of revisions.

<wsdl:operation name="GetRevisionIdList">
  <wsdl:input message="tns:GetRevisionIdListSoapIn" />
  <wsdl:output message="tns:GetRevisionIdListSoapOut" />
</wsdl:operation>

The SOAP operation is defined as follows.

<soap:operation soapAction="http://www.microsoft.com/SoftwareDistribut
ion/GetRevisionIdList" style="document" />

Request validation:

The USS validates inputs as specified in the following table. If any of the inputs are not valid, the USS MUST return a SOAP fault message to the DSS with the <ErrorCode> set, as shown in the table.

Input

Validation conditions

ErrorCode

cookie

MUST be present and not empty.

InvalidCookie

cookie

The EncryptedData MUST be the correct format such that the USS can read values out of it, as specified in section 2.2.4.4.

InvalidCookie

protocolVersion in the cookie EncryptedData

MUST be of the format x.y where x is the Major Version and y is the Minor Version number.

InvalidParameters

protocolVersion in the cookie EncryptedData

Major Version MUST be 1.

IncompatibleProtocolVersion

filter:Anchor

MUST be valid format or NULL or empty string. The format of the anchor is implementation specific and not defined by the protocol.<27>

InvalidParameters

Data processing:

The USS MUST compose a GetRevisionIdListResponse message in response, as follows:

  1. If the DSS protocol version is 1.1, and the USS protocol version is 1.2, force-set the filter's Get63LanguageOnly field to TRUE.

  2. If GetConfig is set to TRUE in the filter, create the NewRevisions list in the response as follows:

    1. Select entries from the Categories, Update Classifications, and Detectoids Tables using the following rules:

      • If the GUID portion of the ID for multiple entries is the same, select only the entry with the highest Revision Number.

      • The LastChangedAnchor in the entry is newer that the anchor specified in the GetRevisionIdList request.

    2. Add the selected entry to the NewRevisions field of the response.

  3. If GetConfig is set to FALSE in the filter, create the NewRevisions list in the response as follows:

    1. Select entries from the Revision Table using the following rules:

      • If the GUID portion of the ID for multiple entries is the same, select only the entry with the highest Revision Number.

      • The LastChangedAnchor in the entry is newer that the anchor specified in the GetRevisionIdList request.

    2. Add the selected entry to the NewRevisions field of the response.

  4. Set the Anchor field in the response to mark the time this operation was completed.

Response:

If no errors occur during processing, the USS MUST return the success response to the DSS.

If an error occurs during processing, the USS MUST return a SOAP fault. The SOAP fault SHOULD contain an <ErrorCode> element, as described in section 2.2.9. If the SOAP fault contains an <ErrorCode> element, its value MUST be one of the following.

If the DSS receives a SOAP fault containing an <ErrorCode> element, it MUST react to the fault, as described in the following table. If the DSS receives a fault that does not contain an <ErrorCode> element, it MUST abort the protocol.

ErrorCode

Description

InvalidParameters

Parameters passed to a web method are not valid. The "message" part of the exception will contain the parameter name. The DSS MUST abort the protocol.

InternalServerError

An internal error occurred on the server. The DSS MUST abort the protocol.

InvalidCookie

The cookie has a syntax, formatting, or other error. The DSS MUST restart the protocol from the beginning.

IncompatibleProtocolVersion

The version of the protocol used by DSS is incompatible with the version used by USS. The DSS MUST abort the protocol.

 
Show:
© 2014 Microsoft