22 lines
No EOL
739 B
C#
22 lines
No EOL
739 B
C#
using System;
|
|
using System.Linq;
|
|
|
|
namespace FrostFS.SDK.Client.Mappers.GRPC;
|
|
|
|
public static class StatusMapper
|
|
{
|
|
public static FrostFsResponseStatus ToModel(this Status.Status status)
|
|
{
|
|
if (status is null)
|
|
return new FrostFsResponseStatus(FrostFsStatusCode.Success);
|
|
|
|
var codeName = Enum.GetName(typeof(FrostFsStatusCode), status.Code);
|
|
|
|
return codeName is null
|
|
? throw new ArgumentException($"Unknown StatusCode. Value: '{status.Code}'.")
|
|
: new FrostFsResponseStatus(
|
|
(FrostFsStatusCode)status.Code,
|
|
status.Message,
|
|
string.Join(", ", status.Details.Select(d => System.Text.Encoding.UTF8.GetString([.. d.Value]))));
|
|
}
|
|
} |