34 lines
No EOL
831 B
C#
34 lines
No EOL
831 B
C#
using System.Linq;
|
|
|
|
using FrostFS.Netmap;
|
|
|
|
namespace FrostFS.SDK.ClientV2;
|
|
|
|
public static class PlacementPolicyMapper
|
|
{
|
|
public static PlacementPolicy ToMessage(this FrostFsPlacementPolicy placementPolicy)
|
|
{
|
|
var pp = new PlacementPolicy
|
|
{
|
|
Filters = { },
|
|
Selectors = { },
|
|
Replicas = { },
|
|
Unique = placementPolicy.Unique
|
|
};
|
|
|
|
foreach (var replica in placementPolicy.Replicas)
|
|
{
|
|
pp.Replicas.Add(replica.ToMessage());
|
|
}
|
|
|
|
return pp;
|
|
}
|
|
|
|
public static FrostFsPlacementPolicy ToModel(this PlacementPolicy placementPolicy)
|
|
{
|
|
return new FrostFsPlacementPolicy(
|
|
placementPolicy.Unique,
|
|
placementPolicy.Replicas.Select(replica => replica.ToModel()).ToArray()
|
|
);
|
|
}
|
|
} |