private void LogWeights([NotNull] ReplicaWeights weights) { if (!log.IsEnabledForDebug()) { return; } var builder = new StringBuilder(); if (weights.Count == 0) { builder.Append("[empty]"); } else { foreach (var pair in weights) { builder.Append("\n\t"); builder.Append(pair.Key.DnsSafeHost); builder.Append(":"); builder.Append(pair.Key.Port); builder.Append(" - "); builder.Append(pair.Value.Value.ToString("F4")); } } log.Debug( "Updated weights for topology '{Topology}' in environment '{Environment}': {Weights}", application, environment, builder.ToString()); }
public static ReplicaWeights Deserialize([NotNull] byte[] data) { var reader = new BinaryBufferReader(data, 0); var count = reader.ReadInt32(); var weights = new ReplicaWeights(count); for (var i = 0; i < count; i++) { var replica = ReadReplica(reader); var weight = ReadWeight(reader); weights[replica] = weight; } return(weights); }