Skip to content

Development activities

The Business Gateway listed the following tasks that should be completed in order to integrate with their service:

  1. Generate SSL certificate request and procure SSL certificates from HM Land Registry.
  2. Install SSL certificates issued by HM Land Registry as trusted root.
  3. Install client digital certificate issued by HM Land Registry into client Azure key vault
  4. Develop a mechanism to generate and store unique message IDs with respect to the request sent to Business Gateway
  5. Consume the WSDL offered by Business Gateway and develop the following functionality based on the web services exposed
  6. Develop a mechanism to send requests to Business Gateway for each web service that has been exposed
  7. Develop a mechanism to submit Outstanding Request requests to get information about requests where the response is not available synchronously
  8. Develop a mechanism to send polling requests for the requests returned by the Outstanding Request service
  9. I think this was covered in the Outstanding Requests development activity.
  10. I dont think we will have a need for the Outstanding Requests service or Polled requests.
  11. Develop a mechanism to process responses returned by Business Gateway
  12. Develop a mechanism to deal with exceptions
  13. Exceptions can occur but I think they can be minimised by following the other development activities correctly.
    1. For Example, Any data received by the API should be checked and validated against the schema, so we dont send invalid data to Business Gateway.
    2. If the WSDL is consumed correctly, then we should be able to avoid serialization exceptions.
    3. If the SSL certificates are installed correctly, then we should be able to avoid connection exceptions.
  14. If they do occur, then we should log them and notify the relevant stakeholders.
  15. For each request sent, the SOAP header must contain the user ID, password and locale information
  16. For each request sent, the HTTPS channel will be mutually authenticated using certificate exchange
  17. See the CertificateProvider in the POC code for an example of how to do this.
  18. The Certificate Provider pulls the certificate from the Azure Key Vault, and loads it into memory.
  19. The CertificateProvider is injecteed into the request clients so that the WSClient method can apply the certificate to the request.