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() ); } }