public TransactionService( ILog log, IIcoExRateClient exRateClient, IInvestorAttributeRepository investorAttributeRepository, ICampaignInfoRepository campaignInfoRepository, ICampaignSettingsRepository campaignSettingsRepository, IInvestorTransactionRepository investorTransactionRepository, IInvestorRefundRepository investorRefundRepository, IInvestorRepository investorRepository, IQueuePublisher<InvestorNewTransactionMessage> investmentMailSender, IKycService kycService, IReferralCodeService referralCodeService, string siteSummaryPageUrl) { _log = log; _exRateClient = exRateClient; _investorAttributeRepository = investorAttributeRepository; _campaignInfoRepository = campaignInfoRepository; _campaignSettingsRepository = campaignSettingsRepository; _investorTransactionRepository = investorTransactionRepository; _investorRefundRepository = investorRefundRepository; _investorRepository = investorRepository; _investmentMailSender = investmentMailSender; _kycService = kycService; _referralCodeService = referralCodeService; _siteSummaryPageUrl = siteSummaryPageUrl; }
public CourseEnrollmentCommandHandler(IStudentRepository studentRepository, ICourseRepository courseRepository, IUnitOfWork unitOfWork, IQueuePublisher publisher) { _StudentRepository = studentRepository; _CourseRepository = courseRepository; _UnitOfWork = unitOfWork; _Publisher = publisher; }
public static IQueuePublisher <T> CreateGooglePublisher <T>(QueueProvider provider, QueueSetting queueSetting, string topicName) { IQueuePublisher <T> publisher = default; switch (provider) { case QueueProvider.GOOGLE: publisher = new GoogleQueuePublisher <T>(queueSetting, topicName); break; } return(publisher); }
public RegulatoryNormsService(IUnitOfWork unitOfWork, IExternalRegulatoryNormsService externalRegulatoryNormsService, IQueuePublisher queuePublisher) { this._regulatoryNormsRepository = new RegulatoryNormsRepository(unitOfWork); this._externalRegulatoryNormsService = externalRegulatoryNormsService; this._queuePublisher = queuePublisher; }
public MessagePublisher(IQueuePublisher <User> userQueuePublisher) { _userQueuePublisher = userQueuePublisher ?? throw new ArgumentNullException(nameof(userQueuePublisher)); }
public EnrollmentRequestHandler(IQueuePublisher publisher) { _Publisher = publisher; }
static void Main(string[] args) { Console.Title = "Rabbit MQ测试控制台"; Console.WriteLine("****** 输入数字1以发布者方式运行,输入数字2以订阅者方式运行 ******"); Console.Write("输入数字 1 或 2:"); int cmd; if (!int.TryParse(Console.ReadKey().KeyChar.ToString(), out cmd)) { Console.WriteLine("输入错误,按任意键退出!"); Console.ReadLine(); return; } Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("\r\n\r\n开始\r\n"); Console.ForegroundColor = ConsoleColor.White; string txt = File.ReadAllText("test.xml"); MessageQueueManager.InitMessageQueueServer("192.168.5.16", 5672, "trkj", "trkj"); switch (cmd) { case 1: Console.Title = "Rabbit MQ 发布者"; IQueuePublisher publisher = MessageQueueManager.GerarateIQueuePublisher( exchangeName: "my_test_exchange", typeName: "topic", routeKey: "test_key", exchangeDurable: true, exchangeAutoDelete: false); //消息进队 for (int i = 0; i < int.MaxValue; i++) { Console.WriteLine(i); publisher.MessageEnqueue(txt, true); Thread.Sleep(1000); } break; case 2: Console.Title = "Rabbit MQ 订阅者"; IQueueSubscriber subscriber = MessageQueueManager.GerarateIQueueSubscriber( exchangeName: "my_test_exchange", queueName: "my_test_queue", typeName: "topic", routeKey: "test_key", exchangeDurable: true, exchangeAutoDelete: false, queueDurable: true, queueAutoDelete: false, queueExclusive: false, prefetchCount: 0, noAck: false, maxLength: -1, maxBytes: -1, messageTtl: -1); subscriber.MessageCallback += Subscriber_MessageCallback; break; default: Console.WriteLine("输入错误,按任意键退出!"); Console.ReadLine(); break; } Console.ReadLine(); }
private static int RunPublish(IQueuePublisher publisher, string[] args) { using (var app = new CommandLineApplication()) { app.ThrowOnUnexpectedArgument = false; app.HelpOption("-h|--help"); app.ExtendedHelpText = "Publishes queue message(s) and/or initializes exchange and queue."; var optionGaugeIds = app.Option( "-g|--gauges <usgsGaugeIds>", "List of USGS gauge ids to publish", CommandOptionType.MultipleValue); var optionAll = app.Option( "-a|--all", "Publishes messages to refresh all USGS gauges", CommandOptionType.NoValue ); var optionTop = app.Option <int>( "-t|--top", "Publishes messages to refresh top N USGS gauges (i.e. limits for bulk testing)", CommandOptionType.SingleValue ).Accepts(o => o.Range(1, 1000)); app.Option("--server.urls <urls>", "PCF server urls", CommandOptionType.SingleValue); app.OnExecute(() => { publisher.Initialize(); if (optionGaugeIds.HasValue()) { publisher.Publish(optionGaugeIds.Values); } else if (optionTop.HasValue()) { publisher.Publish(top: optionTop.ParsedValue); } else if (optionAll.HasValue()) { publisher.Publish(top: null); } else { Console.WriteLine("Producer initialized, no queue messages published"); } }); var returnCode = app.Execute(args); if (returnCode > 0) { // Show help on validation issues. app.ShowHelp(); } else if (returnCode < 0) { var color = Console.ForegroundColor; Console.ForegroundColor = ConsoleColor.Red; Console.Error.WriteLine("Program terminated with error; see logs for details."); Console.ForegroundColor = color; } else { Console.WriteLine("Producer processing complete."); } return(returnCode); } }
public static Task Publish <T>(this IQueuePublisher <T> queuePublisher, T data) { return(queuePublisher.Publish(data, null)); }