コード例 #1
0
        public AesEncryptedRabbitMQFixture()
        {
            // docker run -it --rm --name rabbitmq -p 5682:5672 -p 15682:15672 rabbitmq:3-management
            Uri = new Uri("amqp://*****:*****@localhost:5682");

            WaitForRabbitMQ(Uri);

            var encryptionOptions = new AesMessageEncryptionOptions(KeyGenerator.GenerateAesKey())
            {
                DiagnosticService = DiagnosticService
            };

            MessageEncryptionService = new AesMessageEncryptionService(encryptionOptions);

            var queueingOptions = new RabbitMQMessageQueueingOptions(Uri)
            {
                DiagnosticService   = DiagnosticService,
                DefaultQueueOptions = new QueueOptions
                {
                    IsDurable = false
                },
                MessageEncryptionService = MessageEncryptionService
            };

            MessageQueueingService = new RabbitMQMessageQueueingService(queueingOptions);
        }
コード例 #2
0
        public AesEncryptedFilesystemFixture()
        {
            BaseDirectory = GetTempDirectory();

            var aesOptions = new AesMessageEncryptionOptions(KeyGenerator.GenerateAesKey())
            {
                DiagnosticService = DiagnosticService
            };

            MessageEncryptionService = new AesMessageEncryptionService(aesOptions);

            var fsQueueingOptions = new FilesystemMessageQueueingOptions
            {
                DiagnosticService        = DiagnosticService,
                BaseDirectory            = BaseDirectory,
                MessageEncryptionService = MessageEncryptionService
            };

            MessageQueueingService = new FilesystemMessageQueueingService(fsQueueingOptions);
            MessageQueueingService.Init();
        }
コード例 #3
0
        public AesEncryptedSQLiteFixture()
        {
            BaseDirectory = GetTempDirectory();

            var aesOptions = new AesMessageEncryptionOptions(KeyGenerator.GenerateAesKey())
            {
                DiagnosticService = DiagnosticService
            };

            MessageEncryptionService = new AesMessageEncryptionService(aesOptions);

            QueueDirectory = CreateSubdirectory(BaseDirectory, "queues");
            var queueingOptions = new SQLiteMessageQueueingOptions
            {
                DiagnosticService        = DiagnosticService,
                BaseDirectory            = QueueDirectory,
                MessageEncryptionService = MessageEncryptionService
            };

            MessageQueueingService = new SQLiteMessageQueueingService(queueingOptions);
            MessageQueueingService.Init();
        }
コード例 #4
0
        public AesEncryptedLocalDBFixture()
        {
            var connectionStringSettings = ConfigurationManager.ConnectionStrings["PlatibusUnitTests.LocalDB"];

            ConnectionProvider = new DefaultConnectionProvider(connectionStringSettings);

            var aesOptions = new AesMessageEncryptionOptions(KeyGenerator.GenerateAesKey())
            {
                DiagnosticService = DiagnosticService
            };

            MessageEncryptionService = new AesMessageEncryptionService(aesOptions);

            var queueingOptions = new SQLMessageQueueingOptions(ConnectionProvider, new MSSQLMessageQueueingCommandBuilders())
            {
                DiagnosticService        = DiagnosticService,
                MessageEncryptionService = MessageEncryptionService
            };

            MessageQueueingService = new SQLMessageQueueingService(queueingOptions);
            MessageQueueingService.Init();

            DeleteQueuedMessages();
        }