@Override
					public String generate(Row row) {
						Date indexField = (Date) row.getField(indexFieldPos);
						String indexFieldValueStr = indexField.toLocalDate().format(dateTimeFormatter);
						return indexPrefix.concat(indexFieldValueStr).concat(indexSuffix);
					}
Factory of {@link IndexGenerator}.

<p>Flink supports both static index and dynamic index.

<p>If you want to have a static index, this option value should be a plain string, e.g. 'myusers',
all the records will be consistently written into "myusers" index.

<p>If you want to have a dynamic index, you can use '{field_name}' to reference a field value in the
record to dynamically generate a target index. You can also use '{field_name|date_format_string}' to
convert a field value of TIMESTAMP/DATE/TIME type into the format specified by date_format_string. The
date_format_string is compatible with {@link java.text.SimpleDateFormat}. For example, if the option
value is 'myusers_{log_ts|yyyy-MM-dd}', then a record with log_ts field value 2020-03-27 12:25:55 will
be written into "myusers-2020-03-27" index.
elasticsearch7/elasticsearch7-sink/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/index/IndexGeneratorFactory.java