in src/DotPulsar/MessageId.cs [114:134]
public override bool Equals(object? o)
=> o is MessageId id && Equals(id);
public bool Equals(MessageId? other)
=> other is not null && LedgerId == other.LedgerId && EntryId == other.EntryId && Partition == other.Partition && BatchIndex == other.BatchIndex && Topic == other.Topic;
public static bool operator ==(MessageId x, MessageId y)
=> ReferenceEquals(x, y) || (x is not null && x.Equals(y));
public static bool operator !=(MessageId x, MessageId y)
=> !(x == y);
public override int GetHashCode()
=> HashCode.Combine(LedgerId, EntryId, Partition, BatchIndex, Topic);
public override string ToString()
{
if (Topic == string.Empty)
return $"{LedgerId}:{EntryId}:{Partition}:{BatchIndex}";
return $"{LedgerId}:{EntryId}:{Partition}:{BatchIndex}:{Topic}";
}