コード例 #1
0
ファイル: Program.cs プロジェクト: jhonner72/plat
        private static void Main(string[] args)
        {
            var appSettings = ConfigurationManager.AppSettings;

            var totalInboundMessages = int.Parse(appSettings["TotalInboundMessages"]);

            var inboundExchangeName = appSettings["InboundExchangeName"];
            var imageFileFolder     = appSettings["ImageFileFolder"];

            Console.WriteLine("Total inbound messages is {0}.", totalInboundMessages);
            Console.WriteLine("Inbound Exchange Name is {0}.", inboundExchangeName);
            Console.WriteLine("Image folder path is {0}.", imageFileFolder);

            using (var rabbitBus = InitMessageBus())
            {
                IList <Task> tasks = new List <Task>();
                var          carResponseExchangePublisher = new ExchangePublisher <RecogniseBatchCourtesyAmountRequest>(rabbitBus.Advanced);
                carResponseExchangePublisher.Declare(inboundExchangeName);
                int i = 0;
                // Get batch names (image folders)
                var folderList = Directory.GetDirectories(imageFileFolder);
                ConcurrentBag <string> folderBag = new ConcurrentBag <string>(folderList);

                while (i++ < totalInboundMessages)
                {
                    if (folderBag.IsEmpty)
                    {
                        folderBag = new ConcurrentBag <string>(folderList);
                    }

                    string path;
                    do
                    {
                        folderBag.TryTake(out path);
                    } while (path == null);

                    var batchRequest = PopulateInboundQueue(path);
                    var result       = carResponseExchangePublisher.PublishAsync(batchRequest);
                    tasks.Add(result);
                    //Task.Run( async()=> await carResponseExchangePublisher.PublishAsync(batchRequest));

                    Console.WriteLine(
                        "Message with jobIdentifier {0} has been pushed into inbound queue", batchRequest.jobIdentifier);
                }

                Task.WaitAll(tasks.ToArray());
            }

            Console.ReadKey();
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: jhonner72/plat
        private static void Main(string[] args)
        {
            var appSettings = ConfigurationManager.AppSettings;

            var totalInboundMessages = int.Parse(appSettings["TotalInboundMessages"]);

            var inboundExchangeName = appSettings["InboundExchangeName"];
            var imageFileFolder = appSettings["ImageFileFolder"];

            Console.WriteLine("Total inbound messages is {0}.", totalInboundMessages);
            Console.WriteLine("Inbound Exchange Name is {0}.", inboundExchangeName);
            Console.WriteLine("Image folder path is {0}.", imageFileFolder);

            using (var rabbitBus = InitMessageBus())
            {
                IList<Task> tasks = new List<Task>();
                var carResponseExchangePublisher = new ExchangePublisher<RecogniseBatchCourtesyAmountRequest>(rabbitBus.Advanced);
                carResponseExchangePublisher.Declare(inboundExchangeName);
                int i = 0;
                // Get batch names (image folders)
                var folderList = Directory.GetDirectories(imageFileFolder);
                ConcurrentBag<string> folderBag = new ConcurrentBag<string>(folderList);

                while (i++ < totalInboundMessages)
                {
                    if (folderBag.IsEmpty)
                    {
                        folderBag = new ConcurrentBag<string>(folderList);
                    }

                    string path;
                    do
                    {
                        folderBag.TryTake(out path);
                    } while (path == null);

                    var batchRequest = PopulateInboundQueue(path);
                    var result = carResponseExchangePublisher.PublishAsync(batchRequest);
                    tasks.Add(result);
                    //Task.Run( async()=> await carResponseExchangePublisher.PublishAsync(batchRequest));

                    Console.WriteLine(
                        "Message with jobIdentifier {0} has been pushed into inbound queue", batchRequest.jobIdentifier);
                }

                Task.WaitAll(tasks.ToArray());
            }

            Console.ReadKey();
        }
コード例 #3
0
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.ValidateCodelineRequestExchangeName);
     Bus.Consume <ValidateBatchCodelineResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #4
0
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.GenerateCorrespondingVoucherRequestExchangeName);
     Bus.Consume <GenerateCorrespondingVoucherResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #5
0
ファイル: CheckThirdPartyBus.cs プロジェクト: jhonner72/plat
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.CheckThirdPartyRequestExchangeName);
     Bus.Consume <CheckThirdPartyBatchResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #6
0
ファイル: AutoReadCarBus.cs プロジェクト: jhonner72/plat
 public static void BeforeTestRun()
 {
     InboundExchange.Declare(ConfigurationHelper.InboundExchangeName);
     Bus.Consume <RecogniseBatchCourtesyAmountResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #7
0
 public static void BeforeTestRun()
 {
     ResponseExchange.Declare(ConfigurationHelper.GetPoolVouchersExchangeName);
     Bus.Consume <GetVouchersInformationRequest>(RequestQueue, (message, info) => Requests.Add(message.Body));
 }
コード例 #8
0
ファイル: CorrectCodelineBus.cs プロジェクト: jhonner72/plat
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.CorrectCodelineRequestExchangeName);
     Bus.Consume <CorrectBatchCodelineResponse>(Queue, (message, info) => Responses.Enqueue(message.Body));
 }
コード例 #9
0
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.GenerateBulkCreditRequestExchangeName);
     Bus.Consume <GenerateBatchBulkCreditResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #10
0
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.CorrectTransactionRequestExchangeName);
     Bus.Consume <CorrectBatchTransactionResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #11
0
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.VifRequestExchangeName);
     Bus.Consume <SendBatchValueInstructionFileResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }
コード例 #12
0
 public static void BeforeTestRun()
 {
     RequestExchange.Declare(ConfigurationHelper.RequestExchangeName);
     Bus.Consume <CreateBatchAdjustmentLettersResponse>(Queue, (message, info) => Responses.Add(message.Body));
 }