Logo
HOW TO
Windows XP
Windows Vista
Windows 7
Windows Azure
Windows Server
Windows Phone
 
 
Windows Server

BizTalk 2006 : Getting Started with Pipeline Development (part 1) - Pipeline Stages

8/13/2013 2:17:44 AM

Upon closer inspection, it is clear to see that a pipeline is simply a container for pipeline components. A pipeline has "stages" as shown in the Pipeline Designer. These stages differ for both send and receive pipelines, but they essentially allow you to do two things: first, they provide a way to logically organize the flow of execution logic within the pipeline, and second, they give the pipeline component developer different APIs to code against depending on what type of pipeline component is needed. If custom pipeline development is something that you haven't tackled before, ask yourself the following questions before you get started:

  • What is the end result of my pipeline's execution? What types of message are expected?

  • Will my pipeline need to look at the message's data? If it does, how big are the messages? Can I stream them using the XMLReader, or do I need to load them into an XML DOM?

  • Is the pipeline schema agnostic, or does it need to validate the incoming message type?

  • Does my pipeline need to create multiple messages based on the incoming message or just one?

  • How do I handle exceptions within the pipeline? Do I need to log them? Can the pipeline throw an exception and stop processing, or does it need to output an error document?

  • Do I have all the necessary context properties in the message context?

  • Will I be promoting custom properties?

1. Pipeline Stages

Custom pipelines are divided into receive and send pipelines. Both types of pipelines have stages unique to either sending or receiving messages. Each stage of the pipeline has the ability to contain multiple pipeline components that are designed to be executed within that particular stage. For example, a receive pipeline may have several components within the Decode stage. The components will ex璽cute sequentially from the first to last within the stage. In the case of stages with multiple components, the output of one component will be used as the input for the next. The exceptions to this rule are Disassembler components. These types of components execute on a "first match" rule: the rule states that the first component in the Disassemble stage that is able to process the message will be chosen to execute. The remaining components in the stage are then ignored, and processing continues with the next stage in the pipeline.⣃a name="IDX-CHP-4-0773">

Receive Pipeline Stages

Receive pipelines have specific stages hat help in processing the message in a logical fashion. The surface of the Pipeline Designer is shown in Figure 1. Each of the stages of the pipeline is designed to perform a specific task:

  • Decode: This stage is used to perform operations that are required to "read" the incoming message. Think of the Decode stage as where you would perform things like decryption, decompression, and any processing logic that will be required as input data for the subsequent stages.

  • Disassemble: Components tagged as Disassemblers are designed to produce multiple messages based on the input message. Disassemblers often are used to de-batch the incoming messages into multiple smaller messages. Each of the messages produced by the Disassembler are then passed to the remaining stages within the pipeline.

  • Validate: This stage is used to ensure the message that has been decoded and potentially produced by the Disassembler is considered to be "valid" according to the pipeline rules. Often this involves verifying the XML schema of the message to be of a certain type. Custom validators are often created for custom business-level validation logic (i.e., ensuring that the purchase order number of an incoming message is valid and exists within a database).

  • Resolve Party: This stage is used often in trading partner exchange scenarios. This stage is usually used to examine the digital certificates of a signed message to ensure the validity of the sending party.

Figure 1. Pipeline Designer stages

Send Pipeline Stages

Send pipelines have specific stages that are related to preparing the message to be sent out of BizTalk. The surface of the Send Pipeline Designer is shown in Figure 2. Each of the stages of the pipeline are designed to perform a specific task:

  • Pre-Assemble: This stage is often used to gather any specific information that will be needed by an Assembler and add it to the message.

  • Assemble: Assemblers are responsible for combining multiple smaller messages into one large message. This is often the case when you are aggregating several messages into a batch. Assemblers are also often used in flat-file conversion and EDI scenarios to aggregate the outbound flat file into one large batched file.

  • Encode: Encoders are responsible for writing the message in a fashion so that it can be read by the downstream system. Often this involves ensuring the proper character set is used, compressing the message, MIME encoding, or attaching a digital certificate.

Fidure 2 . Send Pipeline Designer

Other -----------------
- System Center Configuration Manager 2007 : Creating and Modifying Configurations (part 5) - External Authoring, Authoring with CP Studio
- System Center Configuration Manager 2007 : Creating and Modifying Configurations (part 4) - Console Authoring - Validation Criteria
- System Center Configuration Manager 2007 : Creating and Modifying Configurations (part 3) - Console Authoring - Settings
- System Center Configuration Manager 2007 : Creating and Modifying Configurations (part 2) - Console Authoring - Objects
- System Center Configuration Manager 2007 : Creating and Modifying Configurations (part 1)
- System Center Configuration Manager 2007 : Desired Configuration Management - Configurations
- Microsoft Dynamic AX 2009 : Working with .NET Business Connector (part 3) - Querying Data Across Companies, Invoking Business Logic
- Microsoft Dynamic AX 2009 : Working with .NET Business Connector (part 2) - Exception Handling, Accessing Data
- Microsoft Dynamic AX 2009 : Working with .NET Business Connector (part 1) - Processing Requests and Responses
- Integrating Systems Management Server 2003 into Patch Management Processes (part 2) - Authorizing and Distributing Software Updates
 
 
REVIEW
- First look: Apple Watch

- 10 Amazing Tools You Should Be Using with Dropbox

- 3 Tips for Maintaining Your Cell Phone Battery (part 1)

- 3 Tips for Maintaining Your Cell Phone Battery (part 2)
 
VIDEO TUTORIAL
- How to create your first Swimlane Diagram or Cross-Functional Flowchart Diagram by using Microsoft Visio 2010 (Part 1)

- How to create your first Swimlane Diagram or Cross-Functional Flowchart Diagram by using Microsoft Visio 2010 (Part 2)

- How to create your first Swimlane Diagram or Cross-Functional Flowchart Diagram by using Microsoft Visio 2010 (Part 3)
 
Popular tags
Microsoft Access Microsoft Excel Microsoft OneNote Microsoft PowerPoint Microsoft Project Microsoft Visio Microsoft Word Active Directory Biztalk Exchange Server Microsoft LynC Server Microsoft Dynamic Sharepoint Sql Server Windows Server 2008 Windows Server 2012 Windows 7 Windows 8 Adobe Indesign Adobe Flash Professional Dreamweaver Adobe Illustrator Adobe After Effects Adobe Photoshop Adobe Fireworks Adobe Flash Catalyst Corel Painter X CorelDRAW X5 CorelDraw 10 QuarkXPress 8 windows Phone 7 windows Phone 8 BlackBerry Android Ipad Iphone iOS
Popular keywords
HOW TO Swimlane in Visio Visio sort key Pen and Touch Creating groups in Windows Server Raid in Windows Server Exchange 2010 maintenance Exchange server mail enabled groups Debugging Tools Collaborating
Top 10
- Microsoft Excel : How to Use the VLookUp Function
- Fix and Tweak Graphics and Video (part 3) : How to Fix : My Screen Is Sluggish - Adjust Hardware Acceleration
- Fix and Tweak Graphics and Video (part 2) : How to Fix : Text on My Screen Is Too Small
- Fix and Tweak Graphics and Video (part 1) : How to Fix : Adjust the Resolution
- Windows Phone 8 Apps : Camera (part 4) - Adjusting Video Settings, Using the Video Light
- Windows Phone 8 Apps : Camera (part 3) - Using the Front Camera, Activating Video Mode
- Windows Phone 8 Apps : Camera (part 2) - Controlling the Camera’s Flash, Changing the Camera’s Behavior with Lenses
- Windows Phone 8 Apps : Camera (part 1) - Adjusting Photo Settings
- MDT's Client Wizard : Package Properties
- MDT's Client Wizard : Driver Properties
 
Windows XP
Windows Vista
Windows 7
Windows Azure
Windows Server
Windows Phone
2015 Camaro