This wiki is locked. Future workgroup activity and specification development must take place at our new wiki. For more information, see this blog post about the new governance model and this post about changes to the website.

Synchronous Execution Scenario

  • Consumer prepares to execute a series of similar Requests to execute the same Plan repeatedly, each with different input parameter values
    • GETs desired service provider and looks up/saves
      • Automation Request creation factory
    • GETs all Automation Plans (could also get a specific plan, if known)
      • Select the Automation Plan to be executed (might also be an external input)
    • GET the parameters expected when a Job is created for this plan (intentionally left vague, see discussion below)
  • For each request the consumer needs to make
    • Consumer creates the Automation Request
      • Build an Automation Request RDF document
      • Indicates that it is a "smart" client in the RDF, i.e. capable of processing 200 (OK) responses
      • POST the Automation Request to the provider
      • If the provider is able to complete the request quickly
        • Build response consisting of the Request and the Result
      • Else the provider executes the request asynchronously
        • Build response consisting of the Request
      • Consumer tests the POST response status code
      • If 200 (OK)
        • POST Response payload contains its Result
        • Consumer processes the Result (synch or asynch, implementation specific)
      • Else If 201 (Created) or 204 (No Content)
        • Save Request URL from response Location header
      • Else Request not successful, handle
  • Poll (if necessary) until all requests have completed

-- JohnArwe - 20 Apr 2012

Topic revision: r2 - 23 Apr 2012 - 20:04:54 - JohnArwe
 
This site is powered by the TWiki collaboration platform Copyright � by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Contributions are governed by our Terms of Use
Ideas, requests, problems regarding this site? Send feedback