internal static PregeneratedMessage Generate(WriteBuffer buf, QueryMessage queryMessage, string query, int responseMessageCount = 2) { Debug.Assert(query != null && query.All(c => c < 128)); queryMessage.Populate(query); var description = queryMessage.ToString(); queryMessage.Write(buf, false, CancellationToken.None).Wait(); var bytes = buf.GetContents(); buf.Clear(); return(new PregeneratedMessage(bytes, description, responseMessageCount)); }
static PregeneratedMessage BuildQuery(string query) { Contract.Requires(query != null && query.All(c => c < 128)); var totalLen = 5 + query.Length; var ms = new MemoryStream(totalLen); _tempBuf.Underlying = ms; _tempQuery.Populate(query); _tempQuery.Write(_tempBuf); _tempBuf.Flush(); return(new PregeneratedMessage(ms.ToArray(), _tempQuery.ToString())); }