HTTP Receive Activity

The HttpReceive activity allows workflow authors to receive an respond to an HTTP request.
The class is loosely coupled to the host infrastructure. It relies on two interfaces to provide everything it needs at runtime.
The loosely coupled nature of this activity means that it is possible to create alternate host implementations as long as the host implements the required extensions.

Runtime Execution

  1. The HttpReceive activity will create a bookmark in the form {METHOD}|{BASEADDRESS/URITEMPLATE}. It relies on the host to resume the bookmark if it has a matching Uri template.
  2. When the host resumes the bookmark, the HttpReceive calls IHttpWorkflowHostContext.MatchSingle to match the UriTemplate and bind the template arguments.
  3. It enters a no-persist zone
  4. It schedules the Body passing the request / arguments / response delegate arguments
  5. When the body is complete it either creates an HttpResponseMessage with the response as content or returns the response if it is an HttpResponseMessage

Designer View

Expanded View
HttpReceive.png

Collapsed View
receiveCompact.png

Class Description

ReceiveClass.png

Properties

  • CanCreateInstance - Gets or sets whether the operation causes a new workflow service instance to be created.
  • Method - Gets or sets the HTTP Method to listen for
  • PersistBeforeSend - Gets or sets a value that specifies whether the workflow service instance should be persisted before sending the message.
  • UriTemplate - Gets or sets the Uri Template to be used for matching requests

Last edited Aug 29, 2011 at 9:30 PM by ronjacobs, version 7

Comments

No comments yet.