Exemple #1
0
        public ElasticResult <ElasticChat> Add(string name, string creatorGuid)
        {
            var chat     = new ElasticChat(name, creatorGuid, creatorGuid);
            var response = CheckChat(chat);

            return(!response.Success ? response : _entityRepository.Add(EsType, chat));
        }
Exemple #2
0
        public ElasticResult <ElasticChat> Update(ElasticChat chat)
        {
            var response = _elasticRepository.ExecuteCreateOrUpdateRequest(chat, EsType);

            return(response.Success
                ? ElasticResult <ElasticChat> .SuccessResult(chat)
                : ElasticResult <ElasticChat> .FailResult(response.Message));
        }
Exemple #3
0
        // Check Chat Is Unique
        private ElasticResult <ElasticChat> CheckChat(ElasticChat chat)
        {
            var searchDescriptor = new SearchDescriptor <ElasticChat>().Query(
                q => q.Term(t => t.Field(f => f.Guid).Value(chat.Guid))).Index(_elasticRepository.EsIndex).Type(EsType);

            var response = _elasticRepository.ExecuteSearchRequest(searchDescriptor);

            // If request well executed. And user is unique.
            if (response.Success && !response.Response.Hits.Any())
            {
                return(ElasticResult <ElasticChat> .SuccessResult(chat));
            }

            return(response.Success
                ? ElasticResult <ElasticChat> .FailResult("Server Error")
                : ElasticResult <ElasticChat> .FailResult(response.Message));
        }