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; }
Â