Class FindStructureRequest.Builder<TJsonDocument>
java.lang.Object
co.elastic.clients.elasticsearch.text_structure.FindStructureRequest.Builder<TJsonDocument>
- All Implemented Interfaces:
ObjectBuilder<FindStructureRequest<TJsonDocument>>
- Enclosing class:
- FindStructureRequest<TJsonDocument>
public static class FindStructureRequest.Builder<TJsonDocument> extends java.lang.Object implements ObjectBuilder<FindStructureRequest<TJsonDocument>>
Builder for
FindStructureRequest
.-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
Modifier and Type Method Description FindStructureRequest.Builder<TJsonDocument>
addTextFiles(TJsonDocument value)
Add a value totextFiles(List)
, creating the list if needed.FindStructureRequest<TJsonDocument>
build()
Builds aFindStructureRequest
.FindStructureRequest.Builder<TJsonDocument>
charset(java.lang.String value)
The text’s character set.FindStructureRequest.Builder<TJsonDocument>
columnNames(java.lang.String value)
If you have set format to delimited, you can specify the column names in a comma-separated list.FindStructureRequest.Builder<TJsonDocument>
delimiter(java.lang.String value)
If you have set format to delimited, you can specify the character used to delimit the values in each row.FindStructureRequest.Builder<TJsonDocument>
explain(java.lang.Boolean value)
If this parameter is set to true, the response includes a field named explanation, which is an array of strings that indicate how the structure finder produced its result.FindStructureRequest.Builder<TJsonDocument>
format(java.lang.String value)
The high level structure of the text.FindStructureRequest.Builder<TJsonDocument>
grokPattern(java.lang.String value)
If you have set format to semi_structured_text, you can specify a Grok pattern that is used to extract fields from every message in the text.FindStructureRequest.Builder<TJsonDocument>
hasHeaderRow(java.lang.Boolean value)
If you have set format to delimited, you can use this parameter to indicate whether the column names are in the first row of the text.FindStructureRequest.Builder<TJsonDocument>
lineMergeSizeLimit(java.lang.Number value)
The maximum number of characters in a message when lines are merged to form messages while analyzing semi-structured text.FindStructureRequest.Builder<TJsonDocument>
linesToSample(java.lang.Number value)
The number of lines to include in the structural analysis, starting from the beginning of the text.FindStructureRequest.Builder<TJsonDocument>
quote(java.lang.String value)
If you have set format to delimited, you can specify the character used to quote the values in each row if they contain newlines or the delimiter character.FindStructureRequest.Builder<TJsonDocument>
shouldTrimFields(java.lang.Boolean value)
If you have set format to delimited, you can specify whether values between delimiters should have whitespace trimmed from them.FindStructureRequest.Builder<TJsonDocument>
textFiles(java.util.List<TJsonDocument> value)
Request body.FindStructureRequest.Builder<TJsonDocument>
textFiles(TJsonDocument... value)
Request body.FindStructureRequest.Builder<TJsonDocument>
timeout(java.lang.String value)
Sets the maximum amount of time that the structure analysis make take.FindStructureRequest.Builder<TJsonDocument>
timestampField(java.lang.String value)
Optional parameter to specify the timestamp field in the fileFindStructureRequest.Builder<TJsonDocument>
timestampFormat(java.lang.String value)
The Java time format of the timestamp field in the text.FindStructureRequest.Builder<TJsonDocument>
tJsonDocumentSerializer(JsonpSerializer<TJsonDocument> value)
Serializer for TJsonDocument.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
charset
The text’s character set. It must be a character set that is supported by the JVM that Elasticsearch uses. For example, UTF-8, UTF-16LE, windows-1252, or EUC-JP. If this parameter is not specified, the structure finder chooses an appropriate character set.API name:
charset
-
columnNames
If you have set format to delimited, you can specify the column names in a comma-separated list. If this parameter is not specified, the structure finder uses the column names from the header row of the text. If the text does not have a header role, columns are named "column1", "column2", "column3", etc.API name:
column_names
-
delimiter
If you have set format to delimited, you can specify the character used to delimit the values in each row. Only a single character is supported; the delimiter cannot have multiple characters. By default, the API considers the following possibilities: comma, tab, semi-colon, and pipe (|). In this default scenario, all rows must have the same number of fields for the delimited format to be detected. If you specify a delimiter, up to 10% of the rows can have a different number of columns than the first row.API name:
delimiter
-
explain
If this parameter is set to true, the response includes a field named explanation, which is an array of strings that indicate how the structure finder produced its result.API name:
explain
-
format
The high level structure of the text. Valid values are ndjson, xml, delimited, and semi_structured_text. By default, the API chooses the format. In this default scenario, all rows must have the same number of fields for a delimited format to be detected. If the format is set to delimited and the delimiter is not set, however, the API tolerates up to 5% of rows that have a different number of columns than the first row.API name:
format
-
grokPattern
If you have set format to semi_structured_text, you can specify a Grok pattern that is used to extract fields from every message in the text. The name of the timestamp field in the Grok pattern must match what is specified in the timestamp_field parameter. If that parameter is not specified, the name of the timestamp field in the Grok pattern must match "timestamp". If grok_pattern is not specified, the structure finder creates a Grok pattern.API name:
grok_pattern
-
hasHeaderRow
If you have set format to delimited, you can use this parameter to indicate whether the column names are in the first row of the text. If this parameter is not specified, the structure finder guesses based on the similarity of the first row of the text to other rows.API name:
has_header_row
-
lineMergeSizeLimit
public FindStructureRequest.Builder<TJsonDocument> lineMergeSizeLimit(@Nullable java.lang.Number value)The maximum number of characters in a message when lines are merged to form messages while analyzing semi-structured text. If you have extremely long messages you may need to increase this, but be aware that this may lead to very long processing times if the way to group lines into messages is misdetected.API name:
line_merge_size_limit
-
linesToSample
The number of lines to include in the structural analysis, starting from the beginning of the text. The minimum is 2; If the value of this parameter is greater than the number of lines in the text, the analysis proceeds (as long as there are at least two lines in the text) for all of the lines.API name:
lines_to_sample
-
quote
If you have set format to delimited, you can specify the character used to quote the values in each row if they contain newlines or the delimiter character. Only a single character is supported. If this parameter is not specified, the default value is a double quote ("). If your delimited text format does not use quoting, a workaround is to set this argument to a character that does not appear anywhere in the sample.API name:
quote
-
shouldTrimFields
public FindStructureRequest.Builder<TJsonDocument> shouldTrimFields(@Nullable java.lang.Boolean value)If you have set format to delimited, you can specify whether values between delimiters should have whitespace trimmed from them. If this parameter is not specified and the delimiter is pipe (|), the default value is true. Otherwise, the default value is false.API name:
should_trim_fields
-
timeout
Sets the maximum amount of time that the structure analysis make take. If the analysis is still running when the timeout expires then it will be aborted.API name:
timeout
-
timestampField
public FindStructureRequest.Builder<TJsonDocument> timestampField(@Nullable java.lang.String value)Optional parameter to specify the timestamp field in the fileAPI name:
timestamp_field
-
timestampFormat
public FindStructureRequest.Builder<TJsonDocument> timestampFormat(@Nullable java.lang.String value)The Java time format of the timestamp field in the text.API name:
timestamp_format
-
textFiles
Request body.API name:
_value_body
-
textFiles
Request body.API name:
_value_body
-
addTextFiles
Add a value totextFiles(List)
, creating the list if needed. 4 -
tJsonDocumentSerializer
public FindStructureRequest.Builder<TJsonDocument> tJsonDocumentSerializer(@Nullable JsonpSerializer<TJsonDocument> value)Serializer for TJsonDocument. If not set, an attempt will be made to find a serializer from the JSON context. -
build
Builds aFindStructureRequest
.- Specified by:
build
in interfaceObjectBuilder<TJsonDocument>
- Throws:
java.lang.NullPointerException
- if some of the required fields are null.
-