Ejemplo n.º 1
0
 /// <summary>
 /// Writes the body.
 /// </summary>
 /// <param name="writer">The writer.</param>
 protected override void WriteBody(BsonWriter writer){
     writer.WriteValue(BsonType.Integer, 0);
     writer.Write(FullCollectionName, false);
     writer.WriteValue(BsonType.Integer, Flags);
     writer.WriteObject(Selector);
     writer.WriteObject(Document);
 }
 private string WriteStringAndGetHex(string val)
 {
     var ms = new MemoryStream();
     var writer = new BsonWriter(ms, new BsonDocumentDescriptor());
     writer.Write(val, false);
     return BitConverter.ToString(ms.ToArray());
 }
Ejemplo n.º 3
0
 private string WriteAndReadLenString(string val){
     var ms = new MemoryStream();
     var bs = new BsonWriter(ms, new BsonDocumentDescriptor());
     var w = new BinaryWriter(ms);
     var byteCount = bs.CalculateSize(val, false);
     w.Write(byteCount);
     bs.Write(val, false);
     ms.Seek(0, SeekOrigin.Begin);
     var reader = new BsonReader(ms, new BsonDocumentBuilder());
     return reader.ReadLengthString();
 }
        public void TestWriteString()
        {
            var ms = new MemoryStream();
            var writer = new BsonWriter(ms, new BsonDocumentDescriptor());
            const string expected = "54-65-73-74-73-2E-69-6E-73-65-72-74-73-00";
            writer.Write("Tests.inserts", false);

            var hexdump = BitConverter.ToString(ms.ToArray());

            Assert.AreEqual(expected, hexdump);
        }
Ejemplo n.º 5
0
 /// <summary>
 /// Writes the body.
 /// </summary>
 /// <param name="writer">The writer.</param>
 protected override void WriteBody(BsonWriter writer){
     writer.WriteValue(BsonType.Integer, (int)Options);
     writer.Write(FullCollectionName, false);
     writer.WriteValue(BsonType.Integer, NumberToSkip);
     writer.WriteValue(BsonType.Integer, NumberToReturn);
     writer.WriteObject(Query);
     if(ReturnFieldSelector != null)
         writer.WriteObject(ReturnFieldSelector);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Writes the body.
 /// </summary>
 /// <param name="writer">The writer.</param>
 protected override void WriteBody(BsonWriter writer){
     writer.Write(Message, false);
 }
Ejemplo n.º 7
0
        /// <summary>
        ///   Writes out a header and the chunk of documents.
        /// </summary>
        /// <param name = "stream"></param>
        /// <param name = "chunk"></param>
        protected void WriteChunk(Stream stream, MessageChunk chunk){
            WriteHeader(new BinaryWriter(stream), chunk.Size);

            var writer = new BsonWriter(stream, _bsonWriterSettings);
            writer.WriteValue(BsonType.Integer, 0);
            writer.Write(FullCollectionName, false);

            foreach(var document in chunk.Documents)
                writer.WriteObject(document);

            writer.Flush();
        }
Ejemplo n.º 8
0
 /// <summary>
 /// Writes the body.
 /// </summary>
 /// <param name="writer">The writer.</param>
 protected override void WriteBody(BsonWriter writer){
     writer.WriteValue(BsonType.Integer, 0);
     writer.Write(FullCollectionName, false);
     writer.WriteValue(BsonType.Integer, NumberToReturn);
     writer.WriteValue(BsonType.Long, CursorId);
 }