Ejemplo n.º 1
0
        public void SerializeMessageBus()
        {
            var jsonDataContractSerializer = new JsonDataContractSerializer();
            var callerContexts             = new Stack <CallerContext>();

            callerContexts.Push(new CallerContext {
                Identification = new Identification()
                {
                    Id = "IdTest", Type = "TypeTest"
                }
            });
            var messageBus = new MessageBus
            {
                Body   = "Test",
                Header = { BodyType = "Un tipo de body cualquiera me vale.", CreatedAt = new DateTime(2010, 10, 10), CallStack = callerContexts }
            };

            var serialize = jsonDataContractSerializer.Serialize(messageBus);

            var bytes        = MessageBusParser.ToBytes(messageBus);
            var routerHeader = MessageBusParser.GetHeaderFromBytes(bytes);
            var message      = MessageBusParser.GetMessageFromBytes(bytes);

            Assert.AreEqual(serialize, message);
            Assert.AreEqual("IdTest", routerHeader.Identification.Id);
            Assert.AreEqual("TypeTest", routerHeader.Identification.Type);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Processes the received message.
        /// </summary>
        /// <param name="serializedMessage">The serialized message.</param>
        protected override void ProcessReceivedMessage(byte[] serializedMessage)
        {
            var routerHeader = MessageBusParser.GetHeaderFromBytes(serializedMessage);

            InvokeOnMessage(serializedMessage, serializedMessage, routerHeader);
            InvokeReceivedMessage(routerHeader.BodyType, serializedMessage.Length, routerHeader.CreatedAt);
        }