using System;using System.Collections.Generic;using System.Text;using Autofac;using EasyCode.EventBus.Abstractions;using EasyCode.EventBusRabbitMQ;using EasyCode.EventBusRabbitMQ.CommandBus;using EasyCode.EventBusService.Handlers;using Microsoft.Extensions.Logging;using RabbitMQ.Client;using Microsoft.Extensions.Logging;namespace EasyCode.EventBusService{public class DefaultModule:Module{protected override void Load(ContainerBuilder builder){base.Load(builder);builder.RegisterAssemblyTypes(typeof(ProductHandler).Assembly).Where(a => a.IsAssignableTo<ICommandHandler>()).Named<ICommandHandler>(t => t.Name.Replace("Handler", "")).InstancePerLifetimeScope();builder.Register<Func<string, ICommandHandler>>(c =>{var context = c.Resolve<IComponentContext>();return (name) => context.ResolveNamed<ICommandHandler>(name);});builder.Register<DefaultRabbitMQPersistentConnection>(sp =>{//var logger = sp.Resolve<ILogger<DefaultRabbitMQPersistentConnection>>();var factory = new ConnectionFactory(){HostName = "192.168.3.12",};factory.Port = 5672;factory.UserName = "luckearth";factory.Password = "dfs123";var retryCount = 5;return new DefaultRabbitMQPersistentConnection(factory, retryCount);}).As<IRabbitMQPersistentConnection>().SingleInstance();builder.RegisterType<CommandHandlerFactory>().As<ICommandHandlerFactory>().SingleInstance();builder.RegisterType<RabbitMqCommandBusServer>().As<ICommandBusServer>().SingleInstance();}}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。