コード例 #1
0
        public ProductQueryResponseItem[] DequeueProductQueryResponseArray(int messageId)
        {
            ProductQueryResponseItem[] products = null;
            var client = new QueueOf_ProductQueryRequestArray_ProductQueryResponseClient();

            DateTime? dequeuedAt = null;
            var numberOfFailedAttempts = 0;

            Log.ForCurrent.DebugFormat("Dequeueing ProductQueryRequestArray. MessageId: {0}", messageId);
            for (var i = 0; i < _settings.MaximumNumberOfRetries; i++)
            {
                Thread.Sleep(_settings.MillisecondsBetweenRetries);
                products = client.DequeueMessage(messageId);

                if (products != null)
                {
                    dequeuedAt = DateTime.Now;
                    break;
                }

                numberOfFailedAttempts++;
            }

            _pimRequestLogRepository.UpdateRequestWithResponseData(messageId, dequeuedAt, numberOfFailedAttempts, products);

            return products;
        }
コード例 #2
0
        public ProductQueryResponseItem[] DequeueProductQueryResponseArray(int messageId)
        {
            ProductQueryResponseItem[] products = null;
            var client = new QueueOf_ProductQueryRequestArray_ProductQueryResponseClient();

            DateTime?dequeuedAt             = null;
            var      numberOfFailedAttempts = 0;

            Log.ForCurrent.DebugFormat("Dequeueing ProductQueryRequestArray. MessageId: {0}", messageId);
            for (var i = 0; i < _settings.MaximumNumberOfRetries; i++)
            {
                Thread.Sleep(_settings.MillisecondsBetweenRetries);
                products = client.DequeueMessage(messageId);

                if (products != null)
                {
                    dequeuedAt = DateTime.Now;
                    break;
                }

                numberOfFailedAttempts++;
            }

            _pimRequestLogRepository.UpdateRequestWithResponseData(messageId, dequeuedAt, numberOfFailedAttempts, products);

            return(products);
        }
コード例 #3
0
        public int EnqueueProductQueryRequestArray(string primaryAction, string secondaryAction, ProductQueryRequestItem[] queryItems)
        {
            Log.ForCurrent.DebugFormat("Enqueueing ProductQueryRequestArray. Primary action: {0}. Secondary action: {1}", primaryAction, secondaryAction);
            var messageId = new QueueOf_ProductQueryRequestArray_ProductQueryResponseClient().EnqueueMessage(primaryAction, queryItems, secondaryAction);

            LogRequest(messageId, primaryAction, secondaryAction, queryItems);

            return messageId;
        }
コード例 #4
0
        public int EnqueueProductQueryRequestArray(string primaryAction, string secondaryAction, ProductQueryRequestItem[] queryItems)
        {
            Log.ForCurrent.DebugFormat("Enqueueing ProductQueryRequestArray. Primary action: {0}. Secondary action: {1}", primaryAction, secondaryAction);
            var messageId = new QueueOf_ProductQueryRequestArray_ProductQueryResponseClient().EnqueueMessage(primaryAction, queryItems, secondaryAction);

            LogRequest(messageId, primaryAction, secondaryAction, queryItems);

            return(messageId);
        }