// TODO -- should we be using some kind of memory pooling here? private void writeSingle(BinaryWriter writer) { writer.Write(EnvelopeVersionId.SourceInstanceId.ToByteArray()); writer.Write(EnvelopeVersionId.MessageIdentifier.ToByteArray()); writer.Write(Destination?.QueueName() ?? ""); writer.Write(SubQueue ?? ""); writer.Write(SentAt.ToBinary()); writer.Flush(); using (var headerData = new MemoryStream()) { using (var headerWriter = new BinaryWriter(headerData)) { var count = writeHeaders(headerWriter); headerWriter.Flush(); writer.Write(count); headerData.Position = 0; headerData.CopyTo(writer.BaseStream); } } writer.Write(Data.Length); writer.Write(Data); }
public override int GetHashCode() { int hash = 1; if (Company.Length != 0) { hash ^= Company.GetHashCode(); } if (Invoice.Length != 0) { hash ^= Invoice.GetHashCode(); } if (SentAt != 0) { hash ^= SentAt.GetHashCode(); } if (AppliedAt != 0) { hash ^= AppliedAt.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
private void writeSingle(BinaryWriter writer) { writer.Write(SentAt.ToBinary()); writer.Flush(); using (var headerData = new MemoryStream()) { using (var headerWriter = new BinaryWriter(headerData)) { var count = writeHeaders(headerWriter); headerWriter.Flush(); writer.Write(count); headerData.Position = 0; headerData.CopyTo(writer.BaseStream); } } writer.Write(Data.Length); writer.Write(Data); }