protected override void ExpectResponse(IDeleteResponse response)
 {
     response.Found.Should().BeFalse();
     response.Index.Should().Be("project");
     response.Type.Should().Be("project");
     response.Id.Should().Be(this.CallIsolatedValue);
 }
예제 #2
0
 protected override void ExpectResponse(IDeleteResponse response)
 {
     response.ShouldNotBeValid();
     response.Result.Should().Be(Result.Error);
     response.ServerError.Should().NotBeNull();
     response.ServerError.Error.Reason.Should().Be("no such index");
 }
예제 #3
0
        public async Task <DataAccessResponse <string> > Remove(string id)
        {
            DataAccessResponse <string> response = new DataAccessResponse <string>();

            if (id == null)
            {
                return(response.NotFound());
            }

            IDeleteResponse deleteResponse = await _esClient.DeleteAsync <Friend>(id);

            if (deleteResponse.Result == Result.NotFound)
            {
                return(response.NotFound());
            }

            if (!deleteResponse.IsValid)
            {
                return(response.InternalServerError());
            }
            if (deleteResponse.Id == null)
            {
                return(response.InternalServerError());
            }

            return(response.NoContent(deleteResponse.Id));
        }
 protected override void ExpectDeleteNotFoundResponse(IDeleteResponse response)
 {
     response.Index.Should().NotBeNullOrEmpty();
     response.Type.Should().NotBeNullOrEmpty();
     response.Id.Should().NotBeNullOrEmpty();
     response.Version.Should().BeGreaterThan(0);
     response.SequenceNumber.Should().BeGreaterThan(0);
     response.Result.Should().Be(Result.NotFound);
 }
예제 #5
0
 protected override void ExpectResponse(IDeleteResponse response)
 {
     response.ShouldBeValid();
     response.Result.Should().Be(Result.Deleted);
     response.Shards.Should().NotBeNull();
     response.Shards.Total.Should().BeGreaterOrEqualTo(1);
     response.Shards.Successful.Should().BeGreaterOrEqualTo(1);
     response.PrimaryTerm.Should().BeGreaterThan(0);
     response.SequenceNumber.Should().BeGreaterThan(0);
 }
예제 #6
0
        public async Task Delete(EntityDto <Guid> input)
        {
            DocumentPath <Search> docPath = new DocumentPath <Search>(
                input.Id
                );

            IDeleteResponse delResponse = client.Delete <Search>(
                docPath,
                p => p
                .Index("search-index")
                );
        }
예제 #7
0
 protected override void ExpectResponse(IDeleteResponse response)
 {
     response.ShouldNotBeValid();
     response.Result.Should().Be(Result.NotFound);
     response.Index.Should().Be("project");
     response.Type.Should().Be("doc");
     response.Id.Should().Be(this.CallIsolatedValue);
     response.Shards.Total.Should().BeGreaterOrEqualTo(1);
     response.Shards.Successful.Should().BeGreaterOrEqualTo(1);
     response.PrimaryTerm.Should().BeGreaterThan(0);
     response.SequenceNumber.Should().BeGreaterThan(0);
 }
예제 #8
0
        public async Task DeleteAsync(long id)
        {
            DeleteRequest   request = new DeleteRequest(this._entityIndex, this._entityType, id);
            IDeleteResponse result  = await this._esClient.DeleteAsync(request);

            if (!result.IsValid)
            {
                this._logger.LogError(result.OriginalException, $"Error deleting entity {id} of type {this._entityType} from index {this._entityIndex}.", new[] { result });
                throw result.OriginalException;
            }

            this._logger.LogTrace($"Deleted entity:{result.Id} of type {this._entityType} from index {this._entityIndex}.", new[] { result });
        }
        public T Delete(string id)
        {
            T deletedDocument = Get(id);

            if (deletedDocument == null)
            {
                throw new InvalidOperationException("No such object");
            }

            IDeleteResponse response = Client.Delete <T>(id);

            if (!response.IsValid)
            {
                throw new InvalidOperationException(response.ServerError.ToString());
            }
            return(deletedDocument);
        }
예제 #10
0
        public IHttpActionResult DeleteComponentDTO(string id)
        {
            Response _response = new Response();

            try
            {
                ComponentDTO component = _ComponentDTORepo.GetById(id);
                if (component == null)
                {
                    return(NotFound());
                }
                IDeleteResponse resp = _ComponentDTORepo.Delete(id);
                _response.IsSuccess = true;
                return(Ok <Response>(_response));
            }

            catch (Exception ex)
            {
                _response.IsSuccess    = false;
                _response.ErrorMessage = ex;
                return(InternalServerError(new ApplicationException("Something went wrong in this request. internal exception: " + ex.Message)));
            }
        }
예제 #11
0
 public virtual IndexResult DeleteDocument(TModel model)
 {
     return(base.ExecuteFunctionWrite("DeleteDocument", delegate()
     {
         ElasticClient client = ClientFactory.CreateClient();
         IDeleteResponse response = client.Delete(new DeleteRequest(this.ClientFactory.IndexName, this.DocumentType, GetModelId(model)));
         if (!response.IsValid)
         {
             return new IndexResult()
             {
                 success = false,
                 error = "invalid"
             };
         }
         else
         {
             return new IndexResult()
             {
                 success = true,
                 version = response.Version
             };
         }
     }));
 }
예제 #12
0
 /// <summary>
 /// 删除一条文档
 /// </summary>
 /// <typeparam name="T">文档类型</typeparam>
 /// <param name="id">主键id</param>
 /// <param name="index">文档所在库</param>
 /// <returns>返回true false</returns>
 public bool Delete <T>(long id, string index = null) where T : class => HandleResponseResult(() =>
 {
     //DocumentPath<T>.Id(id)
     IDeleteResponse response = _builder?.Client.Delete <T>(id, x => x.Type(typeof(T).SearchName()).Index(index ?? _defaultIndex));
     return(response);
 });
예제 #13
0
 public static ElasticDeleteResponse SuccessResponse(IDeleteResponse response)
 {
     return(new ElasticDeleteResponse {
         Success = true, Response = response
     });
 }
예제 #14
0
 protected override void ExpectResponse(IDeleteResponse response)
 {
     response.IsValid.Should().BeTrue();
     response.Found.Should().BeTrue();
     response.Result.Should().Be(Result.Deleted);
 }