Exemple #1
0
        public void TestGZip()
        {
            dynamic message = new ExpandoObject();

            message.Title     = "Mr.";
            message.Name      = "Sid";
            message.City      = "London";
            message.TimeStamp = DateTime.UtcNow;
            message.Id        = 42;

            var jsonIn = JsonConvert.SerializeObject(message, Formatting.None);

            byte[] data = Encoding.UTF8.GetBytes(jsonIn);

            ServiceHandlerContext holder = data;

            var comp = new CompressorGzip();

            bool successCompress = comp.TryCompression(holder);

            bool successDecompress = comp.TryDecompression(holder);

            string jsonOut = Encoding.UTF8.GetString(holder.Blob);

            Assert.IsTrue(jsonIn == jsonOut);
        }
Exemple #2
0
        public void TestCastFromHolder()
        {
            var holder = new ServiceHandlerContext().SetBlob(new byte[10] {
                0, 1, 2, 3, 4, 5, 6, 7, 8, 9
            });

            byte[] blob = holder;

            Assert.IsNotNull(blob);
            Assert.IsTrue(blob.Length == 10);
        }
Exemple #3
0
        /// <summary>
        /// This extension method is used to set the response for an inline message.
        /// </summary>
        /// <typeparam name="C">The entity type.</typeparam>
        /// <param name="c">The incoming parameters.</param>
        /// <param name="status">The response status.</param>
        /// <param name="response">The optional response object.</param>
        /// <param name="description">The optional response description</param>
        public static void ResponseSet <C>(this ICommandRequestContext c, int status, C response = default(C), string description = null)
        {
            TransmissionPayload ars = c.Request.ToResponse();

            ars.Message.StatusSet(status, description);

            if (!response.Equals(default(C)))
            {
                ars.Message.Holder = ServiceHandlerContext.CreateWithObject(response);
            }

            c.Responses.Add(ars);
        }