private IQueueSubscriber CreateSubscriber() { try { var providerSetting = _configuration["MessageQueueSetting:Provider"]; var provider = Common.ParseEnum <QueueProvider>(providerSetting); switch (provider) { case QueueProvider.GOOGLE: var googleSetting = new GoogleQueueSetting(); var settingPath = _configuration.GetSection("MessageQueueSetting:GoogleQueueSetting"); settingPath.Bind(googleSetting); return(QueueEngineFactory.CreateGoogleSubscriber(provider, googleSetting, "EmailQueueSub", MesageHandler)); // } } catch (Exception ex) { _logger.LogError(ex, ex.Message); } return(default);
private List <IQueuePublisher <OrderQueue> > CreatePublisher() { try { List <IQueuePublisher <OrderQueue> > queuePublishers = new List <IQueuePublisher <OrderQueue> >(); var providerSetting = _configuration["MessageQueueSetting:Provider"]; var provider = Common.ParseEnum <QueueProvider>(providerSetting); switch (provider) { case QueueProvider.GOOGLE: var googleSetting = new GoogleQueueSetting(); var settingPath = _configuration.GetSection("MessageQueueSetting:GoogleQueueSetting"); settingPath.Bind(googleSetting); googleSetting.CredentialFile = Path.Combine(_environment.ContentRootPath, googleSetting.CredentialFile); queuePublishers.Add(QueueEngineFactory.CreateGooglePublisher <OrderQueue>(provider, googleSetting, "SmSQueue")); queuePublishers.Add(QueueEngineFactory.CreateGooglePublisher <OrderQueue>(provider, googleSetting, "EmailQueue")); queuePublishers.Add(QueueEngineFactory.CreateGooglePublisher <OrderQueue>(provider, googleSetting, "StockQueue")); queuePublishers.Add(QueueEngineFactory.CreateGooglePublisher <OrderQueue>(provider, googleSetting, "ShippingQueue")); break; } return(queuePublishers); } catch (Exception ex) { _logger.LogError(ex, ex.Message); } return(default);
public GoogleQueueSubscriber(QueueSetting queueSetting, string subscriptionName, Action <string> messageHandler) { _queueSetting = queueSetting as GoogleQueueSetting; _messageHandler = messageHandler; InitializeQueue(subscriptionName); }
public GoogleQueuePublisher(QueueSetting queueSetting, string topicName) { _queueSetting = queueSetting as GoogleQueueSetting; InitializeQueue(topicName); }