private void ProcessMultiHandler(MethodInfo method, Type paramType, BusRegistry registry, IEnumerable <HandlesAttribute> handlesAttributes) { ValidateReturnTypeIsTask(method); foreach (var attr in handlesAttributes) { ValidateParameterIsAssignableFromType(paramType, attr.Type, method); if (EventType.IsAssignableFrom(paramType)) { registry.AddEventSubscriber(attr.Type, method); } else if (CommandType.IsAssignableFrom(paramType)) { registry.AddCommandHandler(attr.Type, method); } } }
private void ProcessCommandHandlerMethod(MethodInfo methodInfo, Type methodArgType, BusRegistry registry) { ValidateReturnTypeIsTask(methodInfo); registry.AddCommandHandler(methodArgType, methodInfo); }