Create Custom Integration Framework Services

It is possible to create custom Integration framework services. To do so first a valid WCF OperationContract needs to be created to implement. The interface should include a constants class with an endpoint name

When the contract is ready you should create a new project in the site service context. This project should add a reference to the IntegrationFrameworkBaseImplementation project. A class should also be created that needs to inherit the IntegrationFrameworkImplementation class and also implement the operation contract created.

Here is an example of an implementation:


[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, IncludeExceptionDetailInFaults = true, InstanceContextMode = InstanceContextMode.Single)]
public partial class IntegrationFrameworkRetailDivisionPlugin : IntegrationFrameworkImplementation, IIntegrationFrameworkRetailDivisionService
{
	internal static IntegrationFrameworkRetailDivisionPlugin Instance;
	
	public IntegrationFrameworkRetailDivisionPlugin()
	{
		Instance = this;
		LastTicks = DateTime.UtcNow.Ticks;
		TickLock = new object();
		ExistingDatabases = new Dictionary<string, int>();
		ConnectionPool = new ConnectionPoolManager();
	}
	
	public override void Load(Dictionary<string, string> configurations
	{
		base.Load(configurations, IntegrationFrameworkRetailDivisionServiceConstants.EndPointName,
				typeof(IIntegrationFrameworkRetailDivisionService));
	}
		
	public override void Unload()
	{
		nstance = null;
		base.Unload();
	}
		
	public override bool Exclude
	{
		get { return false; }
	}
}
	

The only additional code required is the implementation of the WCF contract.