public ActionResponse Execute() { _context.Warn("Initializing"); var version = ElasticVersionParser.ParseVersion(_context); var properties = new Dictionary <string, object> { { "properties", GetFields() } }; var typeName = _context.Entity.Alias.ToLower(); var body = new Dictionary <string, object> { { typeName, properties } }; var json = JsonConvert.SerializeObject(body); ElasticsearchResponse <DynamicResponse> elasticResponse; if (version.Major >= 7) { elasticResponse = _client.IndicesPutMapping <DynamicResponse>(_context.Connection.Index, typeName, json, qs => qs.AddQueryString("include_type_name", "true")); } else { elasticResponse = _client.IndicesPutMapping <DynamicResponse>(_context.Connection.Index, typeName, json); } var response = new ActionResponse( elasticResponse.HttpStatusCode ?? 500, elasticResponse.ServerError == null ? string.Empty : elasticResponse.ServerError.Error.Reason ?? string.Empty ) { Action = new Configuration.Action() { Type = "internal", ErrorMode = "continue", Description = $"Initialize {typeName} entity." } }; return(response); }
public ActionResponse Execute() { _context.Warn("Initializing"); var properties = new Dictionary <string, object> { { "properties", GetFields() } }; var typeName = _context.Entity.Alias.ToLower(); var body = new Dictionary <string, object> { { typeName, properties } }; var json = JsonConvert.SerializeObject(body); var elasticResponse = _client.IndicesPutMapping <DynamicResponse>(_context.Connection.Index, typeName, json); return(new ActionResponse { Code = elasticResponse.HttpStatusCode ?? 500, Message = elasticResponse.ServerError == null ? string.Empty : elasticResponse.ServerError.Error.Reason ?? string.Empty }); }