예제 #1
0
        // 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);
        }
예제 #2
0
파일: Escrow.cs 프로젝트: iamport/interface
        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);
        }
예제 #3
0
        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);
        }