Example #1
0
        // TODO: Add update index to delete
        /// <summary>
        /// <see cref="IDocumentService.DeleteDocument(string)"/>
        /// </summary>
        /// <param name="rawDocumentId">Document with field <c>resoruceID</c>.</param>
        public void DeleteDocument(Uri id, IndexDocumentDto document)
        {
            var encodedId = HttpUtility.UrlEncode(id.ToString());

            if (string.IsNullOrWhiteSpace(encodedId))
            {
                Console.WriteLine($"No ID in Resource Deletion Request found: {document}");
                return;
            }

            _elasticSearchRepository.DeleteDocument(encodedId, GetIndexToUpdate(document));
        }
        // TODO: Add update index to delete
        /// <summary>
        /// <see cref="IDocumentService.DeleteDocument(string)"/>
        /// </summary>
        /// <param name="rawDocumentId">Document with field <c>resoruceID</c>.</param>
        public void DeleteDocument(string rawDocumentId)
        {
            var document = JObject.Parse(rawDocumentId);
            // Extract resourceID from raw document, which is also used an unique identifer of a document.
            var id = document["resourceId"]["outbound"][0]["uri"].ToString();

            id = HttpUtility.UrlEncode(id);
            Console.WriteLine(rawDocumentId);
            Console.WriteLine(document);
            Console.WriteLine(id);

            if (string.IsNullOrWhiteSpace(id))
            {
                Console.WriteLine($"No ID in Resource Deletion Request found: {document}");
                return;
            }
            //Delete document with the unique identifer.
            // TODO: Add mq dto with index variable
            _elasticSearchRepository.DeleteDocument(id, UpdateIndex.Published);
            //_elasticSearchRepository.DeleteDocument(id, UpdateIndex.Draft);
        }