<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <!--<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />-->
    <section name="queueProcessing" type="NextGen.Pxp.CcdaService.Core.Configurations.CcdaProcessingSection, NextGen.Pxp.CcdaService" />
    <section name="rosettaConfigSection" type="NextGen.Pxp.CcdaService.Core.Configurations.RosettaConfigSection, NextGen.Pxp.CcdaService" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
  </startup>
  <appSettings>
    <add key="AgentsConfigurationFolderPath" value="Configs\Default\" />
    <add key="PracticeSpecificAgentsConfigurationFolderPath" value="Configs\Practice\" />
    <add key="DisplayName" value="NextGen Patient Portal CCD Service" />
    <add key="ServiceName" value="NextGenPatientPortalCCDService" />
    <add key="PracticeConfigurationBackupFolder" value="C:\NextGen\PracticeConfigurationBackup" />
  </appSettings>
  <connectionStrings>
    <add name="store" providerName="MSSQLServer" connectionString="data source=10.45.108.93;initial catalog=Integration_59_UD3;user id=&quot;#bwQHkJRKYsewXHIOacgOSPo5jqJHlyfF7tEj7UzHtZM=&quot;;password=#04e6lu5G5S/SSn/GzM0WiepWvhaUK+O/2/Nj2JW/7tvIeBfc1DV4I3axM756ohmD;Max Pool Size=200" />
  </connectionStrings>
  <rosettaConfigSection>
    <logging enable="true" showGui="false" fileName="RosettaLogs" archiveDaysToKeep="3" archiveMbDirectoryMaxSize="100" archiveDirectory="LogArchive" verboseLogging="false" />
    <logLevelSettings>
      <!--If verboseLogging is true, below specific settings will be overridden by verbose logging and all log levels will be enabled.-->
      <logCritical enable="true" />
      <logError enable="true" />
      <logFatal enable="true" />
      <logInfo enable="false" />
      <logProtocol enable="false" />
      <logTrace enable="false" />
      <logWarning enable="false" />
      <logSQL enable="false" />
      <logAdmin enable="false" />
    </logLevelSettings>
  </rosettaConfigSection>
  <queueProcessing connection="store" practiceSpecificAgents="false">
    <!--enabling service is [true, false], 
    name is the service name and timeout in milliseconds to wait during the shutting down-->
    <service enable="true" timeout="1000" />
    <!--enabling logging is [true, false], level is [trace, info, debug,
    warning, error, critical], file name is the log file name, archiveFileName is the archived log file name, 
    maxArchiveFiles is setting to keep maximum number of archived files, archiveEvery is the duration to archive the log file,
    archiveNumbering is archived file name pattern [Date, DateAndSequence, Rolling, Sequence] and
    archiveAboveSize is the maximum size (in MegaBytes) of log file, above this size log file will be archived. -->
    <logging enable="true" level="info" fileName="AppLogs.log" archiveFileName="LogArchive\AppLogs.{##}.log" maxArchiveFiles="5" archiveEvery="Day" archiveNumbering="Rolling" archiveAboveSize="100" />
    <longitudinal>
      <!--size is the number of CCDA agents in the pool-->
      <pool size="4" />
      <!--intervals in seconds and batchsize is the records in a batch, 
      maxAllowedProcessAttempt maximum allowed process attempt,
      allowed ccda types in longitudinal pool -->
      <polling intervals="10" batchSize="8" maxAllowedProcessAttempt="5" />
      <!--level in Low, Medium, High, Max-->
      <concurrency level="Low" />
    </longitudinal>
    <encounter>
      <!--size is the number of CCDA agents in the pool-->
      <pool size="8" />
      <!--intervals in seconds and batchsize is the records in a batch, 
      maxAllowedProcessAttempt maximum allowed process attempt,
      allowed ccda types in longitudinal pool -->
      <polling intervals="10" batchSize="10" maxAllowedProcessAttempt="5" />
      <!--level in Low, Medium, High, Max-->
      <concurrency level="Medium" />
    </encounter>
    <manual>
      <!--size is the number of CCDA agents in the pool-->
      <pool size="2" />
      <!--intervals in seconds and batchsize is the records in a batch, 
      maxAllowedProcessAttempt maximum allowed process attempt,
      allowed ccda types in longitudinal pool -->
      <polling intervals="10" batchSize="4" maxAllowedProcessAttempt="5" />
      <!--level in Low, Medium, High, Max-->
      <concurrency level="Low" />
    </manual>
    <dateFilter>
      <!--size is the number of CCDA agents in the pool-->
      <pool size="2" />
      <!--intervals in seconds and batchsize is the records in a batch, 
      maxAllowedProcessAttempt maximum allowed process attempt,
      allowed ccda types in longitudinal pool -->
      <polling intervals="10" batchSize="4" maxAllowedProcessAttempt="5" />
      <!--level in Low, Medium, High, Max-->
      <concurrency level="Low" />
    </dateFilter>
    <msu>
      <!--size is the number of CCDA agents in the pool-->
      <pool size="2" />
      <!--intervals in seconds and batchsize is the records in a batch, 
      maxAllowedProcessAttempt maximum allowed process attempt,
      allowed ccda types in longitudinal pool -->
      <polling intervals="10" batchSize="4" maxAllowedProcessAttempt="5" />
      <!--level in Low, Medium, High, Max-->
      <concurrency level="Low" />
    </msu>
  </queueProcessing>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Primitives" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Configuration.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.DependencyInjection.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Caching.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Options" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.DependencyInjection" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.ComponentModel.Annotations" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.2.1.0" newVersion="4.2.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Extensions.Logging" publicKeyToken="adb9793829ddae60" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.7.0" newVersion="3.1.7.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Data.SqlClient" publicKeyToken="23ec7fc2d6eaa4a5" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.20168.4" newVersion="2.0.20168.4" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Identity.Client" publicKeyToken="0a613f4dd989e8ae" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.17.1.0" newVersion="4.17.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.IdentityModel.Protocols.OpenIdConnect" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.7.1.0" newVersion="6.7.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.IdentityModel.Protocols" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.7.1.0" newVersion="6.7.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.IdentityModel.Tokens" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.7.1.0" newVersion="6.7.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.IdentityModel.Tokens.Jwt" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.7.1.0" newVersion="6.7.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.IdentityModel.JsonWebTokens" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.7.1.0" newVersion="6.7.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.IdentityModel.Logging" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.7.1.0" newVersion="6.7.1.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
        <bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="AutoMapper" publicKeyToken="be96cd2c38ef1005" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.2.0.0" newVersion="5.2.0.0" />
      </dependentAssembly>
    </assemblyBinding>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Serilog" publicKeyToken="24c2f752a8e58a10" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>