FixService WCF Service in OMS Order Entry Server

The fix servers require a new WCF service be installed in the Order Entry Server.

This is because they need to be able to call Login with a supplied username.

1 Replace the following files to C:\\KodiakOrderEntryServer\

Kodi.Kodiak.OrderEntry.FixServices.dll version 3.7.6.68 or above

Kodi.Kodiak.OrderEntry.FixServices.dll.pdb

2 Edit configuration files

Add the service to Services.config or CustomServices.config

<object id="FixService" type="Kodi.Kodiak.OrderEntry.FixServices.FixService, Kodi.Kodiak.OrderEntry.FixServices" singleton="false" scope="session"> <property name="LoginRepository" ref="LoginRepository"/> <property name="UserRepository" ref="UserRepository" /> <property name="GroupRepository" ref="GroupRepository" /> <property name="SystemSettings" ref="SystemSettings" /> <property name="DiscountCategoryRepository" ref="DiscountCategoryRepository" /> <property name="ClientSettings" ref="ClientSettings" /> </object>

Add the service to system.servicemodel.services.config

<service behaviorConfiguration="ServiceBehavior" name="FixService"> <endpoint address="" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding" contract="Kodi.Kodiak.OrderEntry.FixServices.IFixService" /> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service>

Service description

[ServiceContract] public interface IFixService { [OperationContract] LoginResponseMessage Login(string username); } Configuration public ILoginRepository LoginRepository { private get; set; } public IUserRepository UserRepository { private get; set; } public IGroupRepository GroupRepository { private get; set; } public Kodi.Kodiak.Services.DataContracts.SystemSettings SystemSettings { get; set; } // Not used public Kodi.Kodiak.Services.DataContracts.ClientSettings ClientSettings { get; set; } public Kodi.Kodiak.Domain.Repository.IDiscountCategoryRepository DiscountCategoryRepository { private get; set; }

Â