SAB BizTalk Archiving Pipeline Component - Codeplex
- by Stuart Brierley
In an effort to give a little more to the BizTalk development community, I have created my first Codeplex project.
The SAB BizTalk Archiving Pipeline Component was written using Visual Studio 2010 with BizTalk Server 2010 intended as the target platform. It is currently at version 0.1, meaning that I have not yet completed all the intended functionality and have so far carried out a limited number of tests. It does however archive files within the bounds of the functionailty so far implemented and seems to be stable in use.
It is based on a recent evolution of a basic archiving component that I wrote in the past, and it is my hope that it will continue to evolve in the coming months.
This work was inspired by some old posts by Gilles Zunino and Jeff Lynch.
You can download the documentation, source code or component dll from Codeplex, but to give you a taste here is the first section of the documentation to whet your appetite:
SAB BizTalk Archiving Pipeline Component
The SAB BizTalk Archiving Pipeline Component has been developed to allow custom piplelines to be created that can archive messages at any stage of pipeline processing.
It works in both receive and send pipelines and will archive messages to file based on the configuration applied to the component in the BizTalk Administration Console.
The Archiving Pipeline Component has been coded for use with BizTalk Server 2010. Use with other versions of BizTalk has not been tested.
The Archiving Pipeline component is supplied as a dll file that should be placed in the BizTalk Server Pipeline Components folder. It can then be used when developing custom pipelines to be deployed as a part of your BizTalk Server applications.
This version of the component allows you to use a number of generic messaging macros and also a small number that are specific to the FILE adapter. It is intended to extend these macros to cover context properties from other adapters in future releases.
Archive Pipeline Parameters
As with all pipeline components, the following parameters can be set when creating your custom pipeline and at runtime via the administration console.
Enabled: Enables and disables the archive process.
True; messages will be archived.
False; messages will be passed to the next stage in the pipeline without performing any processing.
File Name: The file name of the archived message.
Allows the component to build the archive filename at run-time; based on the values entered, the permitted macros and data extracted from the message context properties.
e.g. %FileReceivedFileName%-%InterchangeSequenceNumber%
File Mask: The extension to be added to the File Name following all Macro processing.
e.g. .xml
File Path: The path on which the archived message should be saved.
Allows the component to build the archive directory at run-time; based on the values entered, permitted macros and data extracted from the message context properties.
e.g. C:\Archive\%ReceivePortName%\%Year%\%Month%\%Day%\
\\ArchiveShare\%ReceivePortName%\%Date%\
Overwrite: Enables and disables existing file overwrites.
True; any existing file with the same File Path/Name combination (following macro replacement) will be overwritten.
False; any existing file with the same File Path/Name combination (following macro replacement) will not be overwritten. The current message will be archived with a GUID appended to the File Name.