示例#1
0
        public PipelineContinuation ResolveHandler(ICommunicationContext context)
        {
            var handlerTypes = _handlers.GetHandlerTypesFor(context.PipelineData.ResourceKey);

            if (handlerTypes != null && handlerTypes.Count() > 0)
            {
                context.PipelineData.SelectedHandlers = handlerTypes.ToList();
                return(PipelineContinuation.Continue);
            }
            return(PipelineContinuation.Abort);
        }
        public void all_registered_handlers_for_a_resource_key_are_registered()
        {
            given_handler_registration();

            Handler.Process(MetaModel);
            var typeSystem         = TypeSystems.Default.FromClr(typeof(Customer));
            var registeredHandlers = HandlerRepository.GetHandlerTypesFor(typeSystem);

            registeredHandlers.Any(x => x.Name == "CustomerHandler").ShouldBeTrue();
            registeredHandlers.Any(x => x.Name == "Object").ShouldBeTrue();
        }
        PipelineContinuation ResolveHandler(ICommunicationContext context)
        {
            var handlerTypes = _handlers.GetHandlerTypesFor(context.PipelineData.ResourceKey);

            var enumerable = handlerTypes as IType[] ?? handlerTypes.ToArray();

            if (handlerTypes == null || !enumerable.Any())
            {
                return(PipelineContinuation.Abort);
            }
            context.PipelineData.SelectedHandlers = enumerable.ToList();
            return(PipelineContinuation.Continue);
        }