Workflow services integration of wcf and wf
Download
1 / 34

Workflow Services Integration of WCF and WF - PowerPoint PPT Presentation


  • 178 Views
  • Updated On :

Workflow Services Integration of WCF and WF. PhaniKumar M T Technical Architect | BrainScale Consulting [email protected] Session Objectives and Takeaways. Why Workflow Services? Architectural overview of Workflow Services Features Context Exchange Durable Services

Related searches for Workflow Services Integration of WCF and WF

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Workflow Services Integration of WCF and WF' - ona


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Workflow services integration of wcf and wf l.jpg

Workflow ServicesIntegration of WCF and WF

PhaniKumar M T

Technical Architect | BrainScale Consulting

[email protected]


Session objectives and takeaways l.jpg
Session Objectives and Takeaways

  • Why Workflow Services?

  • Architectural overview of Workflow Services

  • Features

    • Context Exchange

    • Durable Services

    • Duplex Workflow Services

    • Conversations


Agenda l.jpg
Agenda

  • A Typical Application Architecture

  • Architecture of WF Services

  • Features

    • Context Exchange

    • Durable Services

    • Duplex Workflow Services

    • Conversations

  • Prerequisites:

    • Basic Understanding of WF and WCF



Windows workflow foundation l.jpg
Windows Workflow Foundation

What is Workflow?

Visual Studio Designer

A Workflow

Workflow is the organization of work

Activity

Activity Library

What’s the value of Workflow?

Long Running Logic

Workflow Runtime Engine

Flexibility

Runtime Services

Transparency

Host Process


Workflow services advantages l.jpg
Workflow ServicesAdvantages

  • Service implemented as Workflow

    • Leverage Workflow development experience

    • Enforces application protocol by default

    • Allows long-running, durable Services

  • Workflow hosted as Service

    • ServiceContract provides typed interface for integrating with the Workflow

    • Messages enforce by-value, serializable data

    • Workflows can be message-activated


First look at workflow services l.jpg

DEMO

First Look at Workflow Services


Bindings l.jpg
Bindings

  • NetTcpContextBinding

  • WSHttpContextBinding

  • BasicHttpContextBinding

  • <Your Binding Here>

    • Create a custom binding and insert the ContextChannel into the Channel Stack


Custom context binding l.jpg
Custom Context Binding

<customBinding>

<binding name="namedPipeWithContext">

<context />

<binaryMessageEncoding />

<namedPipeTransport />

</binding>

</customBinding>


Session objectives and takeaways12 l.jpg
Session Objectives and Takeaways

  • Why Workflow Services?

  • Architectural overview of Workflow Services

  • Features

    • Context Exchange

    • Durable Services

    • Duplex Messaging

    • Conversations


Context exchange architecture l.jpg
Context Exchange Architecture

  • ContextChannelimplemention

  • Receive

    • Extract context to ContextMessageProperty

    • Apply context on response to activating request

  • Send

    • Add context to all outgoing messages

  • Representation of context

    • SOAP header <wsc:Context />

    • HTTP cookie

    • In code:

      IDictionary<XmlQualifiedName, string>

WorkflowOperationInvoker

Service Runtime

DurableInstanceProvider

MessageContextInspector

OperationInvoker

OperationSelector

ContextChannel

ListenerChannel

InstanceProvider

MessageInspector


Setting outgoing context l.jpg
Setting Outgoing Context

  • // inside wf code application

  • IDictionary<XmlQualifiedName, string> context;

  • // context = … obtain context from store

  • sendActivity.Context = context;

  • //also, to dynamically set send address

  • sendActivity.CustomAddress =

  • “net.tcp://140.141.2.5/service.svc”;


Context exchange persistence and management l.jpg

demo

Context Exchange, Persistence and Management


Non wf client access to context l.jpg
Non WF Client Access to Context

  • // my wpf application

  • IDictionary<XmlQualifiedName, string> context;

  • // context = … obtain context from store

  • IContextManager cm =

  • proxy.InnerChannel.GetProperty<IContextManager>();

  • if (null != cm)

  • cm.SetContext(context);

  • // need to use a channel stack which includes the

  • // context channel, or write the headers directly into

  • // the message (non-WCF) client


Session objectives and takeaways18 l.jpg
Session Objectives and Takeaways

  • Why Workflow Services?

  • Architectural overview of Workflow Services

  • Features

    • Context Exchange

    • Durable Services

    • Duplex Messaging

    • Conversations


Durable services l.jpg
Durable Services

Architecture

Persistence Provider

Service.cs

Service Instance

Service Runtime

App.config

ServiceHost

DurableInstanceProvider

Operation 1

OperationInvoker

MessageContextInspector

Operation 2

OperationSelector

InstanceProvider

ContextChannel

ListenerChannel

MessageInspector

DurableServiceBehavior

ServiceDescription

DurableOperationBehavior

ServiceBehavior

OperationBehavior


Durable services20 l.jpg

demo

Durable Services


Session objectives and takeaways21 l.jpg
Session Objectives and Takeaways

  • Why Workflow Services?

  • Architectural overview of Workflow Services

  • Features

    • Context Exchange

    • Durable Services

    • Duplex Messaging

    • Conversations


Duplex messaging l.jpg

demo

Duplex Messaging


Session objectives and takeaways24 l.jpg
Session Objectives and Takeaways

  • Why Workflow Services?

  • Architectural overview of Workflow Services

  • Features

    • Context Exchange

    • Durable Services

    • Duplex Messaging

    • Conversations


Conversations l.jpg
Conversations

  • Multiple messages arriving for the same operation

  • Receives operating in parallel

  • Scenarios

    • Bidding

    • Coordinating approvals


Conversations29 l.jpg

demo

Conversations



Summary l.jpg
Summary

  • WF and WCF developers benefit from these two worlds coming together

  • Workflow Services provide a natural way to model services

  • With an understanding of context, advanced communication patterns can be implemented across many parties.


Feedback qna l.jpg
Feedback / QnA

  • Your Feedback is Important!

    Please take a few moments to fill out our online feedback.

    For detailed feedback, use the form at http://www.connectwithlife.co.in/vtd/helpdesk.aspx

    Or email us at [email protected]

  • Use the Question Manager on LiveMeeting to ask your questions now!


Contact l.jpg
Contact

  • You can visit us at:

    www.brainscale.com

  • Email Address

    [email protected]


ad