Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add enrich processor and APIs #4275

Merged
merged 3 commits into from
Dec 17, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,6 @@ public static class CodeConfiguration
"data_frame_transform_deprecated.start_transform.json",
"data_frame_transform_deprecated.stop_transform.json",
"data_frame_transform_deprecated.update_transform.json",
"enrich.delete_policy.json",
"enrich.execute_policy.json",
"enrich.get_policy.json",
"enrich.put_policy.json",
"enrich.stats.json",
"transform.delete_transform.json",
"transform.get_transform.json",
"transform.get_transform_stats.json",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"enrich.get_policy": {
"documentation": "https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-get-policy.html",
"stability" : "stable",
"url": {
"parts": {
"name": {
"type" : "list",
"description" : "A comma-separated list of enrich policy names"
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
// ███╗ ██╗ ██████╗ ████████╗██╗ ██████╗███████╗
// ████╗ ██║██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝
// ██╔██╗ ██║██║ ██║ ██║ ██║██║ █████╗
// ██║╚██╗██║██║ ██║ ██║ ██║██║ ██╔══╝
// ██║ ╚████║╚██████╔╝ ██║ ██║╚██████╗███████╗
// ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝
// -----------------------------------------------
//
// This file is automatically generated
// Please do not edit these files manually
// Run the following in the root of the repos:
//
// *NIX : ./build.sh codegen
// Windows : build.bat codegen
//
// -----------------------------------------------
// ReSharper disable RedundantUsingDirective
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Expressions;

// ReSharper disable once CheckNamespace
namespace Elasticsearch.Net.Specification.EnrichApi
{
///<summary>Request options for DeletePolicy <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-delete-policy.html</para></summary>
public class DeleteEnrichPolicyRequestParameters : RequestParameters<DeleteEnrichPolicyRequestParameters>
{
public override HttpMethod DefaultHttpMethod => HttpMethod.DELETE;
}

///<summary>Request options for ExecutePolicy <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-execute-policy.html</para></summary>
public class ExecuteEnrichPolicyRequestParameters : RequestParameters<ExecuteEnrichPolicyRequestParameters>
{
public override HttpMethod DefaultHttpMethod => HttpMethod.PUT;
///<summary>Should the request should block until the execution is complete.</summary>
public bool? WaitForCompletion
{
get => Q<bool? >("wait_for_completion");
set => Q("wait_for_completion", value);
}
}

///<summary>Request options for GetPolicy <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-get-policy.html</para></summary>
public class GetEnrichPolicyRequestParameters : RequestParameters<GetEnrichPolicyRequestParameters>
{
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
}

///<summary>Request options for PutPolicy <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-put-policy.html</para></summary>
public class PutEnrichPolicyRequestParameters : RequestParameters<PutEnrichPolicyRequestParameters>
{
public override HttpMethod DefaultHttpMethod => HttpMethod.PUT;
}

///<summary>Request options for Stats <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-stats.html</para></summary>
public class EnrichStatsRequestParameters : RequestParameters<EnrichStatsRequestParameters>
{
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
}
}
111 changes: 111 additions & 0 deletions src/Elasticsearch.Net/ElasticLowLevelClient.Enrich.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
// ███╗ ██╗ ██████╗ ████████╗██╗ ██████╗███████╗
// ████╗ ██║██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝
// ██╔██╗ ██║██║ ██║ ██║ ██║██║ █████╗
// ██║╚██╗██║██║ ██║ ██║ ██║██║ ██╔══╝
// ██║ ╚████║╚██████╔╝ ██║ ██║╚██████╗███████╗
// ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝
// -----------------------------------------------
//
// This file is automatically generated
// Please do not edit these files manually
// Run the following in the root of the repos:
//
// *NIX : ./build.sh codegen
// Windows : build.bat codegen
//
// -----------------------------------------------
// ReSharper disable RedundantUsingDirective
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Elasticsearch.Net;
using static Elasticsearch.Net.HttpMethod;

// ReSharper disable InterpolatedStringExpressionIsNotIFormattable
// ReSharper disable once CheckNamespace
// ReSharper disable InterpolatedStringExpressionIsNotIFormattable
// ReSharper disable RedundantExtendsListEntry
namespace Elasticsearch.Net.Specification.EnrichApi
{
///<summary>
/// Enrich APIs.
/// <para>Not intended to be instantiated directly. Use the <see cref = "IElasticLowLevelClient.Enrich"/> property
/// on <see cref = "IElasticLowLevelClient"/>.
///</para>
///</summary>
public class LowLevelEnrichNamespace : NamespacedClientProxy
{
internal LowLevelEnrichNamespace(ElasticLowLevelClient client): base(client)
{
}

///<summary>DELETE on /_enrich/policy/{name} <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-delete-policy.html</para></summary>
///<param name = "name">The name of the enrich policy</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
public TResponse DeletePolicy<TResponse>(string name, DeleteEnrichPolicyRequestParameters requestParameters = null)
where TResponse : class, IElasticsearchResponse, new() => DoRequest<TResponse>(DELETE, Url($"_enrich/policy/{name:name}"), null, RequestParams(requestParameters));
///<summary>DELETE on /_enrich/policy/{name} <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-delete-policy.html</para></summary>
///<param name = "name">The name of the enrich policy</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
[MapsApi("enrich.delete_policy", "name")]
public Task<TResponse> DeletePolicyAsync<TResponse>(string name, DeleteEnrichPolicyRequestParameters requestParameters = null, CancellationToken ctx = default)
where TResponse : class, IElasticsearchResponse, new() => DoRequestAsync<TResponse>(DELETE, Url($"_enrich/policy/{name:name}"), ctx, null, RequestParams(requestParameters));
///<summary>PUT on /_enrich/policy/{name}/_execute <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-execute-policy.html</para></summary>
///<param name = "name">The name of the enrich policy</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
public TResponse ExecutePolicy<TResponse>(string name, ExecuteEnrichPolicyRequestParameters requestParameters = null)
where TResponse : class, IElasticsearchResponse, new() => DoRequest<TResponse>(PUT, Url($"_enrich/policy/{name:name}/_execute"), null, RequestParams(requestParameters));
///<summary>PUT on /_enrich/policy/{name}/_execute <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-execute-policy.html</para></summary>
///<param name = "name">The name of the enrich policy</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
[MapsApi("enrich.execute_policy", "name")]
public Task<TResponse> ExecutePolicyAsync<TResponse>(string name, ExecuteEnrichPolicyRequestParameters requestParameters = null, CancellationToken ctx = default)
where TResponse : class, IElasticsearchResponse, new() => DoRequestAsync<TResponse>(PUT, Url($"_enrich/policy/{name:name}/_execute"), ctx, null, RequestParams(requestParameters));
///<summary>GET on /_enrich/policy/{name} <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-get-policy.html</para></summary>
///<param name = "name">A comma-separated list of enrich policy names</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
public TResponse GetPolicy<TResponse>(string name, GetEnrichPolicyRequestParameters requestParameters = null)
where TResponse : class, IElasticsearchResponse, new() => DoRequest<TResponse>(GET, Url($"_enrich/policy/{name:name}"), null, RequestParams(requestParameters));
///<summary>GET on /_enrich/policy/{name} <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-get-policy.html</para></summary>
///<param name = "name">A comma-separated list of enrich policy names</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
[MapsApi("enrich.get_policy", "name")]
public Task<TResponse> GetPolicyAsync<TResponse>(string name, GetEnrichPolicyRequestParameters requestParameters = null, CancellationToken ctx = default)
where TResponse : class, IElasticsearchResponse, new() => DoRequestAsync<TResponse>(GET, Url($"_enrich/policy/{name:name}"), ctx, null, RequestParams(requestParameters));
///<summary>GET on /_enrich/policy/ <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-get-policy.html</para></summary>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
public TResponse GetPolicy<TResponse>(GetEnrichPolicyRequestParameters requestParameters = null)
where TResponse : class, IElasticsearchResponse, new() => DoRequest<TResponse>(GET, "_enrich/policy/", null, RequestParams(requestParameters));
///<summary>GET on /_enrich/policy/ <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-get-policy.html</para></summary>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
[MapsApi("enrich.get_policy", "")]
public Task<TResponse> GetPolicyAsync<TResponse>(GetEnrichPolicyRequestParameters requestParameters = null, CancellationToken ctx = default)
where TResponse : class, IElasticsearchResponse, new() => DoRequestAsync<TResponse>(GET, "_enrich/policy/", ctx, null, RequestParams(requestParameters));
///<summary>PUT on /_enrich/policy/{name} <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-put-policy.html</para></summary>
///<param name = "name">The name of the enrich policy</param>
///<param name = "body">The enrich policy to register</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
public TResponse PutPolicy<TResponse>(string name, PostData body, PutEnrichPolicyRequestParameters requestParameters = null)
where TResponse : class, IElasticsearchResponse, new() => DoRequest<TResponse>(PUT, Url($"_enrich/policy/{name:name}"), body, RequestParams(requestParameters));
///<summary>PUT on /_enrich/policy/{name} <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-put-policy.html</para></summary>
///<param name = "name">The name of the enrich policy</param>
///<param name = "body">The enrich policy to register</param>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
[MapsApi("enrich.put_policy", "name, body")]
public Task<TResponse> PutPolicyAsync<TResponse>(string name, PostData body, PutEnrichPolicyRequestParameters requestParameters = null, CancellationToken ctx = default)
where TResponse : class, IElasticsearchResponse, new() => DoRequestAsync<TResponse>(PUT, Url($"_enrich/policy/{name:name}"), ctx, body, RequestParams(requestParameters));
///<summary>GET on /_enrich/_stats <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-stats.html</para></summary>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
public TResponse Stats<TResponse>(EnrichStatsRequestParameters requestParameters = null)
where TResponse : class, IElasticsearchResponse, new() => DoRequest<TResponse>(GET, "_enrich/_stats", null, RequestParams(requestParameters));
///<summary>GET on /_enrich/_stats <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/enrich-stats.html</para></summary>
///<param name = "requestParameters">Request specific configuration such as querystring parameters &amp; request specific connection settings.</param>
[MapsApi("enrich.stats", "")]
public Task<TResponse> StatsAsync<TResponse>(EnrichStatsRequestParameters requestParameters = null, CancellationToken ctx = default)
where TResponse : class, IElasticsearchResponse, new() => DoRequestAsync<TResponse>(GET, "_enrich/_stats", ctx, null, RequestParams(requestParameters));
}
}
8 changes: 8 additions & 0 deletions src/Elasticsearch.Net/ElasticLowLevelClient.NoNamespace.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
using Elasticsearch.Net.Specification.CatApi;
using Elasticsearch.Net.Specification.ClusterApi;
using Elasticsearch.Net.Specification.CrossClusterReplicationApi;
using Elasticsearch.Net.Specification.EnrichApi;
using Elasticsearch.Net.Specification.GraphApi;
using Elasticsearch.Net.Specification.IndexLifecycleManagementApi;
using Elasticsearch.Net.Specification.IndicesApi;
Expand Down Expand Up @@ -71,6 +72,12 @@ public LowLevelCrossClusterReplicationNamespace CrossClusterReplication
private set;
}

public LowLevelEnrichNamespace Enrich
{
get;
private set;
}

public LowLevelGraphNamespace Graph
{
get;
Expand Down Expand Up @@ -172,6 +179,7 @@ partial void SetupNamespaces()
Cat = new LowLevelCatNamespace(this);
Cluster = new LowLevelClusterNamespace(this);
CrossClusterReplication = new LowLevelCrossClusterReplicationNamespace(this);
Enrich = new LowLevelEnrichNamespace(this);
Graph = new LowLevelGraphNamespace(this);
IndexLifecycleManagement = new LowLevelIndexLifecycleManagementNamespace(this);
Indices = new LowLevelIndicesNamespace(this);
Expand Down
7 changes: 7 additions & 0 deletions src/Elasticsearch.Net/IElasticLowLevelClient.Generated.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
using Elasticsearch.Net.Specification.CatApi;
using Elasticsearch.Net.Specification.ClusterApi;
using Elasticsearch.Net.Specification.CrossClusterReplicationApi;
using Elasticsearch.Net.Specification.EnrichApi;
using Elasticsearch.Net.Specification.GraphApi;
using Elasticsearch.Net.Specification.IndexLifecycleManagementApi;
using Elasticsearch.Net.Specification.IndicesApi;
Expand Down Expand Up @@ -68,6 +69,12 @@ LowLevelCrossClusterReplicationNamespace CrossClusterReplication
get;
}

///<summary>Enrich APIs</summary>
LowLevelEnrichNamespace Enrich
{
get;
}

///<summary>Graph APIs</summary>
LowLevelGraphNamespace Graph
{
Expand Down
Loading