Esempio n. 1
0
        public async Task UploadDocumentIndex(string projectId, string branchName, DocumentIndexDto documentIndex)
        {
            var gatewayAddress = await _discoveryService.GetGatewayAddress();

            var uploadIndexAddress = $"{gatewayAddress}/search/projects/{projectId}/branches/{branchName}";
            var client             = GetClient();

            var documentsList = new List <DocumentIndexDto>();

            documentsList.Add(documentIndex);
            var         stringContent = JsonConvert.SerializeObject(documentsList);
            HttpContent content       = new StringContent(stringContent, Encoding.UTF8, "application/json");

            HttpResponseMessage httpResponseMessage = await client.PostAsync(uploadIndexAddress, content);

            if (!httpResponseMessage.IsSuccessStatusCode)
            {
                var message = await httpResponseMessage.Content.ReadAsStringAsync();

                throw new UploadDocumentToIndexException($"Document wasn't successfully uploaded. Status code: {httpResponseMessage.StatusCode}. Response message: '{message}'.");
            }
        }