Kodi.Kodiak.WindowsServices.OrderEntryServer.exe.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" requirePermission="false" />
<sectionGroup name="spring">
<section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
<section name="parsers" type="Spring.Context.Support.NamespaceParsersSectionHandler, Spring.Core" />
</sectionGroup>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<appSettings>
<add key="BaseUrl" value="http://url.is:8080/" />

<add key="IsTest" value="false" />
<add key="ClientOrderIdPrefix" value="ABC" />
<!-- These could possibly be moved to spring config -->
<add key="GeniusUsername" value="username" />
<add key="GeniusPassword" value="password" />
<!-- Templates This could be left empty -->
<add key="AllocationNotificationTemplateFile" value="C:\KodiakOrderEntryServer\Templates\AllocationNotificationTemplate.htm" />
<add key="ComplianceNotificationTemplateFile" value="C:\KodiakOrderEntryServer\Templates\ComplianceNotificationTemplate.htm" />
<add key="RiskCheckOrderLimitTemplateFile" value="C:\KodiakOrderEntryServer\Templates\RiskCheckOrderLimitTemplateFile.htm" />
<add key="RiskCheckDailyLimitTemplateFile" value="C:\KodiakOrderEntryServer\Templates\RiskCheckDailyLimitTemplateFile.htm" />
<!-- EMAIL -->
<add key="SMTPServer" value="smtp.mymachine.com" /><!-- This could be in the system.web.mail system config node -->

<add key="NotificationFromAddress" value="noreply@company.is"/>
<add key="ComplianceOfficerEmail" value="user@company.com"/>
<add key="RiskCheckNotificationAddress" value="user@company.com" />
<!-- FUND ORDERS -->
<add key="FundExchangeName" value="ABC" />
<add key="AutoAllocateFundOrders" value="true" />
<add key="BypassFundOrderRiskCheck" value="true" />
<!--ORION-->
<add key="SendToOrion" value="false" />
<!-- This is ABC Specific -->
<add key="BasicAuthUsername" value="username" />
<add key="BasicAuthUsernamePassword" value="password" />
<add key="WebMethodsUsername" value="username" />
<add key="WebMethodsPassword" value="password" />
<!--
<add key="OrionConnectionString" value="Data Source=DATACENTER;Initial Catalog=Orion;Integrated Security=SSPI" />
<add key="ForwardContractsQueue" value="OrionTopic" />
LIBRA
<add key="LibraConnectionString" value="Server=192.168.1.XX;Initial Catalog=INITCAT;User Id=userid;password=password" />
<add key="Portfolios" value="1" />
<add key="MarketMakerSSN" value="1111111111" />
<add key="ManualSettlementText" value="" />
<add key="KODIAK_ISB_CONNECTION_STRING" value="Server=192.168.1.XX;Initial Catalog=KODIAK;User Id=userid;password=password" />
-->
<!-- THIS COULD BE HARD CODED IF LEFT OUT -->
<!--<add key="SpringConfigFile" value="C:\KodiakOrderEntryServer\Configs\ServicesToRun.config" />-->
<!--<add key="BaseUrl" value="http://url:8080/" />-->
</appSettings>

<connectionStrings />

<spring>

<context>
<!--Points to the objects path of the spring config (see below)-->
<resource uri="config://spring/objects" />
<resource uri="~/Configs/KodiakAop.config" />
<resource uri="~/Configs/KodiakDatabase.config" />
<resource uri="~/Configs/KodiakServices.config" />
<resource uri="~/Configs/KodiakNmsPublisher.config" />
<resource uri="~/Configs/KodiakFix.config" />
<resource uri="~/ServiceConfigs/ServicesToRun.config" />

<!--Custom Configs defined here-->
<resource uri="~/ServiceConfigs/ServicesABC.config" />
</context>
<parsers>
<parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data" />
<parser type="Spring.Messaging.Nms.Config.NmsNamespaceParser, Spring.Messaging.Nms" />
</parsers>
<objects xmlns="http://www.springframework.net" xmlns:db="http://www.springframework.net/database" xmlns:tx="http://www.springframework.net/tx">
<!--DATABASE SETTINGS-->
<db:provider id="DbProvider" provider="OracleODP-2.0"
connectionString="Data Source= (DESCRIPTION =
(load_balance=on)(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = machine1)(PORT = 1234))
(ADDRESS = (PROTOCOL = TCP)(HOST = machine2)(PORT = 1234))
) (CONNECT_DATA = (SID = machine1) (SERVER = DEDICATED)));User Id=kodiak;Password=password"/>
<object id="NHSessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate32">
<property name="DbProvider" ref="DbProvider" />
<property name="MappingAssemblies">
<list>
<value>Kodi.Kodiak.DataAccess.NH</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />
<entry key="dialect" value="NHibernate.Dialect.Oracle9iDialect" />
<entry key="connection.driver_class" value="NHibernate.Driver.OracleDataClientDriver" />
<entry key="generate_statistics" value="true" />
<entry key="default_schema" value="KODIAK" />
</dictionary>
</property>
<property name="ExposeTransactionAwareSessionFactory" value="true" />
</object>

<object id="FixTradeSenderSubId" type="System.String" factory-method="Copy">
<constructor-arg index="0">
<value>XXXXXX</value>
</constructor-arg>
</object>
<object id="FixDropSenderSubId" type="System.String" factory-method="Copy">
<constructor-arg index="0">
<value>XXXXXX</value>
</constructor-arg>
</object>
</objects>
</spring>
<!-- The system.webServer section is required for running ASP.NET AJAX under Internet Information Services 7.0. It is not necessary for previous version of IIS. -->
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>

<system.serviceModel>
<bindings>
<basicHttpBinding>

<binding name="BasicAuthBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Basic" />
</security>
</binding>

<binding name="SEC_Processes_pub_webservices_wsSjodapontun_Binder" receiveTimeout="00:30:00" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
<security mode="Transport" >
<transport clientCredentialType="Basic" proxyCredentialType="None"/>
</security>
</binding>


<binding name="SoapBinding" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None" realm=""></transport>
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>

</basicHttpBinding>
<wsHttpBinding>
<binding name="WSHttpBinding" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false" maxBufferPoolSize="2147483646" maxReceivedMessageSize="2147483646">
<readerQuotas maxDepth="2147483646" maxStringContentLength="2147483646" maxArrayLength="2147483646" maxBytesPerRead="2147483646" maxNameTableCharCount="2147483646" />
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
<security>
<transport></transport>
</security>
</binding>

<binding name="WsUsernameBinding">
<security mode="Message">
<message clientCredentialType="UserName" />
</security>
</binding>
</wsHttpBinding>
<webHttpBinding>
<binding name="WebHttpBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows"></transport>
</security>
</binding>
</webHttpBinding>

</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceAuthorization principalPermissionMode="Custom">
<authorizationPolicies>
<add policyType="Kodi.Kodiak.Security.AuthorizationPolicy, Kodi.Kodiak.Security" />
</authorizationPolicies>
</serviceAuthorization>
<serviceCredentials>
<windowsAuthentication includeWindowsGroups="true" allowAnonymousLogons="false" />
</serviceCredentials>
<serviceThrottling maxConcurrentCalls="200" maxConcurrentSessions="200" maxConcurrentInstances="200" />
<dataContractSerializer maxItemsInObjectGraph="2147483646" />
</behavior>
<behavior name="ServiceBehaviorBasic">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
<dataContractSerializer maxItemsInObjectGraph="2147483646" />
</behavior>
<!--
This is an authenication mechanism where a service is authenticated with username and password which are designated in the config file.
This is used for integrating with systems that do not support windows authentication.
<add key="BasicAuthUsername" value="username" />
<add key="BasicAuthUsernamePassword" value="password" />
-->
<behavior name="BasicAuthServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="Kodi.Kodiak.Security.BasicUsernamePasswordValidator, Kodi.Kodiak.Security" />
</serviceCredentials>
<serviceThrottling maxConcurrentCalls="200" maxConcurrentSessions="200" maxConcurrentInstances="200" />
<dataContractSerializer maxItemsInObjectGraph="2147483646" />
</behavior>

<behavior name="UsernameAuthServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceCredentials type="Kodi.Kodiak.Security.PasswordServiceCredentials, Kodi.Kodiak.Security">
<serviceCertificate findValue="KodiakOMS"
storeLocation="LocalMachine"
storeName="My"
x509FindType="FindBySubjectName" />
<userNameAuthentication userNamePasswordValidationMode="Custom" />
</serviceCredentials>
<serviceThrottling maxConcurrentCalls="200" maxConcurrentSessions="200" maxConcurrentInstances="200" />
<dataContractSerializer maxItemsInObjectGraph="2147483646" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="rest">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
<client>
<endpoint address="http://genius.livemarketdata.com/genius3p/webservices/metadata.asmx" binding="basicHttpBinding" bindingConfiguration="SoapBinding" contract="MetaDataServices.MetaDataSoap" name="MetaDataSoap" />
<endpoint address="http://genius.livemarketdata.com/genius3p/WebServices/Genius.asmx" binding="basicHttpBinding" bindingConfiguration="SoapBinding" contract="KodiServices.KodiSoap" name="KodiSoap" />
<!--
ABC SPECIFIC
THIS NEEDS TO BE CHANGED TO THE PRODUCTION VERSION:
-->

</client>
<services>

<service behaviorConfiguration="ServiceBehavior" name="MarketService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding" contract="Kodi.Kodiak.Services.ServiceContracts.IMarketService"></endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>

<service name="ExternalOrderEntryService" behaviorConfiguration="ServiceBehaviorBasic">
<endpoint address="" binding="webHttpBinding" contract="Kodi.Kodiak.MarketGateway.Server.IExternalOrderEntryService" behaviorConfiguration="rest" />
</service>

<!-- ABC -->
<service behaviorConfiguration="ServiceBehavior" name="OrderManagementService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding" contract="Kodi.Kodiak.Services.ServiceContracts.IOrderManagementService" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
<service behaviorConfiguration="ServiceBehavior" name="AllocationService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding" contract="Kodi.Kodiak.Services.ServiceContracts.IAllocationService" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>

<service behaviorConfiguration="ServiceBehavior" name="FundOrderService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding" contract="Kodi.Kodiak.Services.ServiceContracts.IFundOrderService" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>

<service behaviorConfiguration="UsernameAuthServiceBehavior" name="FundOrderServiceUN">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="WsUsernameBinding" contract="Kodi.Kodiak.Services.ServiceContracts.IFundOrderService" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>

<service behaviorConfiguration="BasicAuthServiceBehavior" name="FundOrderServiceABC">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="BasicAuthBinding" contract="Kodi.Kodiak.Services.ServiceContracts.IFundOrderService" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>

<service name="ReceiptService" behaviorConfiguration="ServiceBehaviorBasic">
<endpoint address="" binding="webHttpBinding" bindingConfiguration="WebHttpBinding" contract="Kodi.Kodiak.Services.ABC.IReceiptService" behaviorConfiguration="rest" />
</service>

</services>
<diagnostics performanceCounters="All" />
</system.serviceModel>

<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Warning" propagateActivity="true">
<listeners>
<add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener" initializeData="c:\KODIAK_LOGS\FIX\Trade\OrderEntryTrace.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>

<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net">
<arg key="configType" value="INLINE" />
</factoryAdapter>
</logging>
</common>

<log4net configSource="log4net.config"></log4net>
<!--

IS THIS PROPERLY CONFI

-->
<system.net>
<defaultProxy>
<proxy proxyaddress="http://proxy.somemachine.com" bypassonlocal="true" />
</defaultProxy>
</system.net>

<!--Uncomment the following and set the correct version number if you receive ORA errors after installing-->
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<!-- <qualifyAssembly partialName="Oracle.DataAccess" fullName="Oracle.DataAccess,version=2.112.1.1,publicKeyToken=89b483f429c47342,culture=neutral" /> -->
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.1.1.0" newVersion="2.1.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spring.Core" publicKeyToken="65e474d141e25e07" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.2.40943" newVersion="1.3.2.40943" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spring.Aop" publicKeyToken="65e474d141e25e07" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.2.40943" newVersion="1.3.2.40943" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Spring.Data" publicKeyToken="65e474d141e25e07" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.3.2.40943" newVersion="1.3.2.40943" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Apache.NMS" publicKeyToken="82756feee3957618" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.5.0.2149" newVersion="1.5.0.2149" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.2.0.4000" newVersion="3.2.0.4000" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.5.19.0" newVersion="2.5.19.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.5.19.0" newVersion="2.5.19.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.web>
<compilation debug="true">
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
</assemblies>
</compilation>
<authentication mode="Windows" />
<customErrors mode="Off" />
<identity impersonate="true" />
</system.web>

<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5" />
<providerOption name="WarnAsError" value="false" />
</compiler>
</compilers>
</system.codedom>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
<supportedRuntime version="v2.0" />
</startup>

</configuration>