← All recipes
Moderne licensed

Change numeric field type with conversion

Recipe IDio.moderne.elastic.elastic9.ChangeApiNumericFieldType
Artifactio.moderne.recipe:rewrite-elastic

Adds conversion methods with null checks for numeric type changes in Elasticsearch 9 API.

Single recipeProprietary

Usage

You’ll need the Moderne CLI configured before running the command below.

mod run . --recipe io.moderne.elastic.elastic9.ChangeApiNumericFieldType --recipe-option "fullyQualifiedName=co.elastic.clients.elasticsearch.core.MsearchRequest" --recipe-option "field=maxConcurrentSearches" --recipe-option "targetType=java.lang.Integer"

If the recipe isn’t available locally, install it with:

mod config recipes jar install io.moderne.recipe:rewrite-elastic:0.8.2

Options

NameTypeDescription
fullyQualifiedNamerequiredStringThe fully qualified name of the class containing the field
e.g. co.elastic.clients.elasticsearch.core.MsearchRequest
fieldrequiredStringThe name of the field/method that has changed type
e.g. maxConcurrentSearches
targetTyperequiredStringThe new type that the field returns in Elasticsearch 9
e.g. java.lang.Integer

Data tables

Structured output this recipe can produce.

  • Source files that had resultsSource files that were modified by the recipe run.org.openrewrite.table.SourcesFileResults
  • Source files that had search resultsSearch results that were found during the recipe run.org.openrewrite.table.SearchResults
  • Source files that errored on a recipeThe details of all errors produced by a recipe run.org.openrewrite.table.SourcesFileErrors
  • Recipe performanceStatistics used in analyzing the performance of recipes.org.openrewrite.table.RecipeRunStats