InstanceSettingsConfigurationServiceWithCache
using System;
using System.Runtime.CompilerServices;
using System.Threading;
using System.Threading.Tasks;
namespace Relativity.Transfer.InstanceSettings
{
internal class InstanceSettingsConfigurationServiceWithCache : IInstanceSettingsConfigurationService
{
private readonly IInstanceSettingsConfigurationService instanceSettingsConfigurationService;
private readonly ICacheProvider cacheProvider;
private readonly RelativityConnectionInfo connectionInfo;
private readonly SemaphoreSlim semaphore = new SemaphoreSlim(1, 1);
public InstanceSettingsConfigurationServiceWithCache(IInstanceSettingsConfigurationService instanceSettingsConfigurationService, ICacheProvider cacheProvider, RelativityConnectionInfo connectionInfo)
{
this.instanceSettingsConfigurationService = instanceSettingsConfigurationService;
this.cacheProvider = cacheProvider;
this.connectionInfo = connectionInfo;
}
[AsyncStateMachine(typeof(<GetMaxAllowedTargetDataRateMbpsAsync>d__5))]
public Task<uint?> GetMaxAllowedTargetDataRateMbpsAsync(CancellationToken token)
{
<GetMaxAllowedTargetDataRateMbpsAsync>d__5 stateMachine = default(<GetMaxAllowedTargetDataRateMbpsAsync>d__5);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<uint?>.Create();
stateMachine.<>4__this = this;
stateMachine.token = token;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<GetIsCloudInstanceAsync>d__6))]
public Task<bool> GetIsCloudInstanceAsync(CancellationToken token)
{
<GetIsCloudInstanceAsync>d__6 stateMachine = default(<GetIsCloudInstanceAsync>d__6);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<bool>.Create();
stateMachine.<>4__this = this;
stateMachine.token = token;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<InternalGetMaxAllowedTargetDataRateMbpsAsync>d__7))]
private Task<uint?> InternalGetMaxAllowedTargetDataRateMbpsAsync(CancellationToken token, IObjectCacheRepository cache, string key)
{
<InternalGetMaxAllowedTargetDataRateMbpsAsync>d__7 stateMachine = default(<InternalGetMaxAllowedTargetDataRateMbpsAsync>d__7);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<uint?>.Create();
stateMachine.<>4__this = this;
stateMachine.token = token;
stateMachine.cache = cache;
stateMachine.key = key;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<InternalGetIsCloudInstanceAsync>d__8))]
private Task<bool> InternalGetIsCloudInstanceAsync(CancellationToken token, IObjectCacheRepository cache, string key)
{
<InternalGetIsCloudInstanceAsync>d__8 stateMachine = default(<InternalGetIsCloudInstanceAsync>d__8);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<bool>.Create();
stateMachine.<>4__this = this;
stateMachine.token = token;
stateMachine.cache = cache;
stateMachine.key = key;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
[AsyncStateMachine(typeof(<SynchronizeAsync>d__9<>))]
private Task<T> SynchronizeAsync<T>(Func<Task<T>> func)
{
<SynchronizeAsync>d__9<T> stateMachine = default(<SynchronizeAsync>d__9<T>);
stateMachine.<>t__builder = AsyncTaskMethodBuilder<T>.Create();
stateMachine.<>4__this = this;
stateMachine.func = func;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
}
}