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

HttpTransferIssueBuilder

using Relativity.Transfer.Http.Paths; using Relativity.Transfer.Issues; using Relativity.Transfer.Paths; using System; namespace Relativity.Transfer.Http.Issues { internal class HttpTransferIssueBuilder : TransferIssueBuilder, IHttpTransferIssueBuilder, ITransferIssueBuilder { private readonly IPathStatusChecker pathStatusChecker; private readonly IHttpPathStatusResolver pathStatusResolver; public HttpTransferIssueBuilder(IPathStatusChecker pathStatusChecker, IHttpPathStatusResolver pathStatusResolver) { this.pathStatusResolver = pathStatusResolver; this.pathStatusChecker = pathStatusChecker; } public IHttpTransferIssueBuilder CreateFromException(TransferPath path, Exception exception) { TransferIssue.Message = HttpErrorCodes.GetErrorMessage(exception); TransferIssue.Code = HttpErrorCodes.GetErrorCode(exception); TransferPathStatus status = pathStatusResolver.Resolve(exception); TransferIssue.IsRetryable = pathStatusChecker.IsRetrayable(status); TransferIssue.Path = path; return this; } } }