Пример #1
0
        private static Proto.Msg.VectorClock VectorClockToProto(VectorClock vectorClock, Dictionary <string, int> hashMapping)
        {
            var message = new Proto.Msg.VectorClock();

            foreach (var clock in vectorClock.Versions)
            {
                var version = new Proto.Msg.VectorClock.Types.Version();
                version.HashIndex = MapWithErrorMessage(hashMapping, clock.Key.ToString(), "hash");
                version.Timestamp = clock.Value;
                message.Versions.Add(version);
            }
            message.Timestamp = 0L;

            return(message);
        }
Пример #2
0
 private static VectorClock VectorClockFrom(Proto.Msg.VectorClock version, IList <string> hashMapping)
 {
     return(VectorClock.Create(version.Versions.ToImmutableSortedDictionary(version1 =>
                                                                            VectorClock.Node.FromHash(hashMapping[version1.HashIndex]), version1 => version1.Timestamp)));
 }