<PackageReference Include="Relativity.Server.Transfer.SDK" Version="7.7.0" />

RelativityManagerWebApiService

using Polly; using System; using System.Collections.Generic; using System.ComponentModel; using System.Runtime.CompilerServices; using System.Threading; using System.Threading.Tasks; namespace Relativity.Transfer.WebApi { [Obsolete("WebAPI support will be removed in upcoming releases. In order to communicate with Relativity use Kepler Services. For more information, see KeplerServiceBase class.")] internal sealed class RelativityManagerWebApiService : WebApiService, IRelativityManagerService, IDisposable { private RelativityManager RelativityManagerInstance { get; set; } public RelativityManagerWebApiService(RelativityConnectionInfo connectionInfo, ClientConfiguration configuration, IUserManagerService userManagerService, ITransferLog log) : base(connectionInfo, configuration, userManagerService, log) { } public Task<IEnumerable<InstanceSetting>> GetInstanceSettingsAsync(CancellationToken token) { Initialize(); return ((Policy)RetrySyntaxAsync.WaitAndRetryAsync(Policy.Handle<Exception>(), base.MaxRetryAttempts, (Func<int, TimeSpan>)((int retryAttempt) => TimeSpan.FromSeconds(Math.Pow(2, (double)retryAttempt))), (Action<Exception, TimeSpan>)delegate(Exception exception, TimeSpan span) { base.Log.LogError(exception, $"""{span}", Array.Empty<object>()); CheckLogin(exception); })).ExecuteAsync<IEnumerable<InstanceSetting>>((Func<CancellationToken, Task<IEnumerable<InstanceSetting>>>)delegate { <<GetInstanceSettingsAsync>b__5_2>d stateMachine = default(<<GetInstanceSettingsAsync>b__5_2>d); stateMachine.<>t__builder = AsyncTaskMethodBuilder<IEnumerable<InstanceSetting>>.Create(); stateMachine.<>4__this = this; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; }, token); } [AsyncStateMachine(typeof(<GetSingleInstanceSettingAsync>d__6))] public Task<InstanceSetting> GetSingleInstanceSettingAsync(string section, string name, CancellationToken token) { <GetSingleInstanceSettingAsync>d__6 stateMachine = default(<GetSingleInstanceSettingAsync>d__6); stateMachine.<>t__builder = AsyncTaskMethodBuilder<InstanceSetting>.Create(); stateMachine.<>4__this = this; stateMachine.section = section; stateMachine.name = name; stateMachine.token = token; stateMachine.<>1__state = -1; stateMachine.<>t__builder.Start(ref stateMachine); return stateMachine.<>t__builder.Task; } [AsyncStateMachine(typeof(<GetCloudInstanceAsync>d__7))] public Task<bool> GetCloudInstanceAsync(CancellationToken token) { <GetCloudInstanceAsync>d__7 stateMachine = default(<GetCloudInstanceAsync>d__7); 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; } protected override void Dispose(bool disposing) { base.Dispose(disposing); if (disposing && RelativityManagerInstance != null) { ((Component)RelativityManagerInstance).Dispose(); RelativityManagerInstance = null; } } protected override void Initialize() { base.Initialize(); RelativityManager relativityManager = new RelativityManager(); relativityManager.set_Credentials(WebApiService.GetWebApiHttpCredential(base.ConnectionInfo).CreateCredentials()); relativityManager.set_CookieContainer(base.Configuration.CookieContainer); relativityManager.set_Timeout((int)TimeSpan.FromSeconds(base.TimeoutSeconds).TotalMilliseconds); relativityManager.set_Url(UrlHelper.Combine(WebApiService.GetWebApiServiceUrl(base.ConnectionInfo, base.Log), "RelativityManager.asmx").ToString()); RelativityManagerInstance = relativityManager; } } }