private Msg.GossipStatus GossipStatusToProto(GossipStatus gossipStatus)
        {
            var allHashes   = gossipStatus.Version.Versions.Keys.Select(x => x.ToString()).ToList();
            var hashMapping = allHashes.ZipWithIndex();

            return(Msg.GossipStatus.CreateBuilder().SetFrom(UniqueAddressToProto(gossipStatus.From))
                   .AddRangeAllHashes(allHashes).SetVersion(VectorClockToProto(gossipStatus.Version, hashMapping)).Build());
        }
Exemple #2
0
        private static byte[] GossipStatusToProto(GossipStatus gossipStatus)
        {
            var allHashes   = gossipStatus.Version.Versions.Keys.Select(x => x.ToString()).ToList();
            var hashMapping = allHashes.ZipWithIndex();

            var message = new Proto.Msg.GossipStatus();

            message.From = UniqueAddressToProto(gossipStatus.From);
            message.AllHashes.AddRange(allHashes);
            message.Version = VectorClockToProto(gossipStatus.Version, hashMapping);
            return(message.ToByteArray());
        }