Example #1
0
        public ConsumedMessageBase Build(BasicDeliverEventArgs args)
        {
            var context = ConsumedMessageContext.FromBasicDeliverEventArgs(args);
            var binding = _resolver.Resolve(context);

            if (binding is EmptyMessageBinding)
            {
                return(new UnresolvedMessage(args));
            }

            var serializer = context.CreateSerializer(_serializarionconfiguration);

            if (serializer is NullSerializer)
            {
                return(new UnsupportedMessage(args));
            }

            try { return(context.ToConsumedMessage(serializer, binding)); }
            catch { return(new CorruptedMessage(args)); }
        }