public RelationalDatabase(IInitializationInformation initializationInformation) { _logicHelper = new LogicHelper(initializationInformation); _applicationName = initializationInformation.ApplicationName; _queueMessenger = new MessageRoutingType { }.MessageQueueSelection(initializationInformation); }
public InternalTransaction(IInitializationInformation initializationInformation) { _logicHelper = new LogicHelper(initializationInformation); _applicationName = initializationInformation.ApplicationName;; _queueMessenger = new MessageRoutingType { }.MessageQueueSelection(initializationInformation); }
/// <summary> /// Initialize the application /// </summary> /// <param name="initializationInformation"></param> private void Initialize(IInitializationInformation initializationInformation) { Application = new Application(initializationInformation); InternalTransaction = new InternalTransaction(initializationInformation); ExternalTransaction = new ExternalTransaction(initializationInformation); RelationalDatabase = new RelationalDatabase(initializationInformation); }
private void RabbitMQSetup(IInitializationInformation initializationInformation) { var connection = _connectionfactory.CreateConnection(); var model = connection.CreateModel(); try { model.ExchangeDeclare(initializationInformation.RabbitMq.ExchangeName, ExchangeType.Direct); Console.WriteLine("Creating Exchange: " + initializationInformation.RabbitMq.ExchangeName); model.QueueDeclare(initializationInformation.RabbitMq.QueueName, true, false, false, null); Console.WriteLine("Creating Queue: " + initializationInformation.RabbitMq.QueueName); model.QueueBind(initializationInformation.RabbitMq.QueueName, initializationInformation.RabbitMq.ExchangeName, initializationInformation.RabbitMq.RoutingKey); Console.WriteLine(string.Format("Creating Binding between Queue: {0} and Exchange: {1} using key: {2}", initializationInformation.RabbitMq.QueueName, initializationInformation.RabbitMq.ExchangeName, initializationInformation.RabbitMq.RoutingKey)); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { connection.Close(); } }
/// <summary> /// Determines the message service being used. Such as GCP Pub/Sub, RabbitMQ /// </summary> /// <param name="initializationInformation"></param> /// <returns></returns> public IQueueMessenger MessageQueueSelection(IInitializationInformation initializationInformation) { if (initializationInformation.MessageQueueType == MessageQueueType.RabbitMQ) { return(new Dao.RabbitMq(initializationInformation)); } if (initializationInformation.MessageQueueType == MessageQueueType.GcpMQ) { return(new Dao.GCPMQ(initializationInformation)); } return(null); }
public RabbitMq(IInitializationInformation initializationInformation) { _connectionfactory = new ConnectionFactory() { HostName = initializationInformation.RabbitMq.HostName, UserName = initializationInformation.RabbitMq.UserName, Password = initializationInformation.RabbitMq.Password, Port = initializationInformation.RabbitMq.PortNumber, DispatchConsumersAsync = true }; ExchangeName = initializationInformation.RabbitMq.ExchangeName; RoutingKey = initializationInformation.RabbitMq.RoutingKey; RabbitMQSetup(initializationInformation); }
public SimpleLoggingTests() { Mock <IQueueMessenger> queueMessenger = new Mock <IQueueMessenger>(); queueMessenger.Setup(x => x.SendMessage(It.IsAny <byte[]>())); _queueMessenger = queueMessenger.Object; _initializationInformation = new InitialilizationInformation(MessageQueueType.RabbitMQ); _initializationInformation.RabbitMq.ExchangeName = "Testing"; _initializationInformation.RabbitMq.HostName = "localHost"; _initializationInformation.RabbitMq.Password = "******"; _initializationInformation.RabbitMq.UserName = "******"; _initializationInformation.RabbitMq.PortNumber = 5672; _initializationInformation.RabbitMq.QueueName = "SimpleLoggingClientTest"; _initializationInformation.RabbitMq.RoutingKey = "key"; _initializationInformation.ApplicationName = APPLICATION_NAME; _logicHelper = new LogicHelper(_initializationInformation); _internalTransaction = new InternalTransaction(_initializationInformation); _externalTransaction = new ExternalTransaction(_initializationInformation); _application = new Application(_initializationInformation); _messageQueue = new MessageQueue(_initializationInformation); _relationalDatabase = new RelationalDatabase(_initializationInformation); }
public LogicHelper(IInitializationInformation initializationInformation) { _publishLoggingLevel = initializationInformation.PublishLoggingLevel; _isEncrypted = initializationInformation.EncryptMessages; }
public GCPMQ(IInitializationInformation initializationInfomormation) { _projectId = initializationInfomormation.GcpMq.ProjectId; _topicId = initializationInfomormation.GcpMq.TopicId; _LogicHelper = new LogicHelper(initializationInfomormation); }