rewrite-arconia

The rewrite-arconia module publishes 54 recipes across 5 categories.

framework

Composite recipes

Migrate to Arconia 0.10

io.arconia.rewrite.framework.UpgradeArconia_0_10

Migrate a Spring Boot application to the latest Arconia 0.10.x release.

Tags: arconia

Recipes applied
  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

  • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×2)

Example

Before
plugins {
    id 'java-library'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'io.arconia:arconia-dev-tools'
}
After
plugins {
    id 'java-library'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-devtools'
}

Migrate to Arconia 0.11

io.arconia.rewrite.framework.UpgradeArconia_0_11

Migrate a Spring Boot application to the latest Arconia 0.11.x release.

Tags: arconia

Recipes applied

Example

Before
arconia:
  dev:
    services:
      lgtm:
        reusable: true
      ollama:
        reusable: false
      postgresql:
        reusable: true
      redis:
        community:
          environment:
            MY_VAR: value
          image-name: custom-redis:latest
          reusable: true
After
arconia:
  dev:
    services:
      lgtm:
        shared: dev-mode
      ollama:
        shared: never
      postgresql:
        shared: dev-mode
      redis:
        environment:
          MY_VAR: value
        image-name: custom-redis:latest
        shared: dev-mode

Migrate to Arconia 0.12

io.arconia.rewrite.framework.UpgradeArconia_0_12

Migrate a Spring Boot application to the latest Arconia 0.12.x release.

Tags: arconia

Recipes applied

Example

Before
package com.yourorg;

import io.arconia.opentelemetry.autoconfigure.sdk.metrics.SdkMeterProviderBuilderCustomizer;
import io.arconia.opentelemetry.autoconfigure.sdk.resource.SdkResourceBuilderCustomizer;

class Demo {
    SdkMeterProviderBuilderCustomizer meterCustomizer = null;
    SdkResourceBuilderCustomizer resourceCustomizer = null;
}
After
package com.yourorg;

import io.arconia.opentelemetry.autoconfigure.sdk.metrics.OpenTelemetryMeterProviderBuilderCustomizer;
import io.arconia.opentelemetry.autoconfigure.sdk.resource.OpenTelemetryResourceBuilderCustomizer;

class Demo {
    OpenTelemetryMeterProviderBuilderCustomizer meterCustomizer = null;
    OpenTelemetryResourceBuilderCustomizer resourceCustomizer = null;
}

Migrate to Arconia 0.13

io.arconia.rewrite.framework.UpgradeArconia_0_13

Migrate a Spring Boot application to the latest Arconia 0.13.x release.

Tags: arconia

Recipes applied

Example

Before
arconia.config.profiles.enabled=true
arconia.config.profiles.development=dev1, dev2, dev3
arconia.config.profiles.test=test1, test2
arconia.config.profiles.prod=prod1
After
arconia.bootstrap.profiles.enabled=true
arconia.dev.profiles=dev1, dev2, dev3
arconia.test.profiles=test1, test2
# Removed. Use 'spring.profiles.active' to specify the profiles to activate in production mode.
# arconia.config.profiles.prod=prod1

Migrate to Arconia 0.14

io.arconia.rewrite.framework.UpgradeArconia_0_14

Migrate a Spring Boot application to the latest Arconia 0.14.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.13 (io.arconia.rewrite.framework.UpgradeArconia_0_13)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

  • Change type (org.openrewrite.java.ChangeType ×2)

  • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

  • Rename package name (org.openrewrite.java.ChangePackage ×2)

  • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

  • Rename package name (org.openrewrite.java.ChangePackage)

  • Change type (org.openrewrite.java.ChangeType ×4)

  • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×24)

  • Add a comment to a Spring Boot configuration property (io.arconia.rewrite.spring.boot.properties.CommentSpringBootProperty ×4)

  • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

Example

Before
package com.yourorg;

import io.arconia.multitenancy.autoconfigure.core.MultitenancyCoreAutoConfiguration;

class Demo {
    MultitenancyCoreAutoConfiguration config = null;
}
After
package com.yourorg;

import io.arconia.multitenancy.core.autoconfigure.MultitenancyCoreAutoConfiguration;

class Demo {
    MultitenancyCoreAutoConfiguration config = null;
}

Migrate to Arconia 0.15

io.arconia.rewrite.framework.UpgradeArconia_0_15

Migrate a Spring Boot application to the latest Arconia 0.15.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.14 (io.arconia.rewrite.framework.UpgradeArconia_0_14)

    • Migrate to Arconia 0.13 (io.arconia.rewrite.framework.UpgradeArconia_0_13)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

    • Change type (org.openrewrite.java.ChangeType ×2)

    • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

    • Rename package name (org.openrewrite.java.ChangePackage ×2)

    • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

    • Rename package name (org.openrewrite.java.ChangePackage)

    • Change type (org.openrewrite.java.ChangeType ×4)

    • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×24)

    • Add a comment to a Spring Boot configuration property (io.arconia.rewrite.spring.boot.properties.CommentSpringBootProperty ×4)

    • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.16

io.arconia.rewrite.framework.UpgradeArconia_0_16

Migrate a Spring Boot application to the latest Arconia 0.16.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.15 (io.arconia.rewrite.framework.UpgradeArconia_0_15)

    • Migrate to Arconia 0.14 (io.arconia.rewrite.framework.UpgradeArconia_0_14)

      • Migrate to Arconia 0.13 (io.arconia.rewrite.framework.UpgradeArconia_0_13)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

      • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

      • Change type (org.openrewrite.java.ChangeType ×2)

      • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

      • Rename package name (org.openrewrite.java.ChangePackage ×2)

      • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

      • Rename package name (org.openrewrite.java.ChangePackage)

      • Change type (org.openrewrite.java.ChangeType ×4)

      • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×24)

      • Add a comment to a Spring Boot configuration property (io.arconia.rewrite.spring.boot.properties.CommentSpringBootProperty ×4)

      • Change Gradle or Maven dependency (org.openrewrite.java.dependencies.ChangeDependency)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.17

io.arconia.rewrite.framework.UpgradeArconia_0_17

Migrate a Spring Boot application to the latest Arconia 0.17.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.16 (io.arconia.rewrite.framework.UpgradeArconia_0_16)

    • Migrate to Arconia 0.15 (io.arconia.rewrite.framework.UpgradeArconia_0_15)

      • Migrate to Arconia 0.14 (io.arconia.rewrite.framework.UpgradeArconia_0_14)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.18

io.arconia.rewrite.framework.UpgradeArconia_0_18

Migrate a Spring Boot application to the latest Arconia 0.18.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.17 (io.arconia.rewrite.framework.UpgradeArconia_0_17)

    • Migrate to Arconia 0.16 (io.arconia.rewrite.framework.UpgradeArconia_0_16)

      • Migrate to Arconia 0.15 (io.arconia.rewrite.framework.UpgradeArconia_0_15)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×14)

  • Change type (org.openrewrite.java.ChangeType ×2)

Example

Before
package com.yourorg;

import io.arconia.dev.services.mongodb.MongoDbAtlasDevServicesAutoConfiguration;
import io.arconia.dev.services.mongodb.MongoDbAtlasDevServicesProperties;

class Demo {
    MongoDbAtlasDevServicesAutoConfiguration config = null;
    MongoDbAtlasDevServicesProperties properties = null;
}
After
package com.yourorg;

import io.arconia.dev.services.mongodb.atlas.MongoDbAtlasDevServicesAutoConfiguration;
import io.arconia.dev.services.mongodb.atlas.MongoDbAtlasDevServicesProperties;

class Demo {
    MongoDbAtlasDevServicesAutoConfiguration config = null;
    MongoDbAtlasDevServicesProperties properties = null;
}

Migrate to Arconia 0.19

io.arconia.rewrite.framework.UpgradeArconia_0_19

Migrate a Spring Boot application to the latest Arconia 0.19.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.18 (io.arconia.rewrite.framework.UpgradeArconia_0_18)

    • Migrate to Arconia 0.17 (io.arconia.rewrite.framework.UpgradeArconia_0_17)

      • Migrate to Arconia 0.16 (io.arconia.rewrite.framework.UpgradeArconia_0_16)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×14)

    • Change type (org.openrewrite.java.ChangeType ×2)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Change type (org.openrewrite.java.ChangeType)

  • Rename package name (org.openrewrite.java.ChangePackage)

  • Change method name (org.openrewrite.java.ChangeMethodName ×5)

  • Rename package name (org.openrewrite.java.ChangePackage)

  • Change method name (org.openrewrite.java.ChangeMethodName ×52)

  • Rename package name (org.openrewrite.java.ChangePackage)

  • Change method name (org.openrewrite.java.ChangeMethodName ×4)

  • Use source() methods instead of addHttpSources() or addFileSources() (io.arconia.rewrite.framework.docling.UseConvertDocumentRequestSourcesMethod)

  • Rename package name (org.openrewrite.java.ChangePackage)

  • Change method name (org.openrewrite.java.ChangeMethodName)

  • Rename package name (org.openrewrite.java.ChangePackage)

  • Change method name (org.openrewrite.java.ChangeMethodName ×14)

  • Change type (org.openrewrite.java.ChangeType)

  • Change method name (org.openrewrite.java.ChangeMethodName)

  • Use HealthCheckResponse.Builder instead of constructor (io.arconia.rewrite.framework.docling.UseHealthCheckResponseBuilder)

Example

Before
import io.arconia.docling.client.convert.request.ConvertDocumentRequest;
import io.arconia.docling.client.convert.request.source.HttpSource;

import java.net.URI;
import java.util.List;

class Demo {
    void call() {
        ConvertDocumentRequest convertDocumentRequest = ConvertDocumentRequest.builder()
            .httpSources(List.of(HttpSource.builder().url(URI.create("https://example.net")).build()))
            .options(null)
            .target(null)
            .build();

        convertDocumentRequest.options();
        convertDocumentRequest.sources();
        convertDocumentRequest.target();
    }

    void call2() {
        ConvertDocumentRequest convertDocumentRequest = ConvertDocumentRequest.builder()
            .addHttpSources("https://example.net")
            .build();
    }

    void call3() {
        ConvertDocumentRequest convertDocumentRequest = ConvertDocumentRequest.builder()
            .addHttpSources(URI.create("https://example.net"))
            .build();
    }
}
After
import ai.docling.api.serve.convert.request.ConvertDocumentRequest;
import ai.docling.api.serve.convert.request.source.HttpSource;

import java.net.URI;
import java.util.List;

class Demo {
    void call() {
        ConvertDocumentRequest convertDocumentRequest = ConvertDocumentRequest.builder()
            .sources(List.of(HttpSource.builder().url(URI.create("https://example.net")).build()))
            .options(null)
            .target(null)
            .build();

        convertDocumentRequest.getOptions();
        convertDocumentRequest.getSources();
        convertDocumentRequest.getTarget();
    }

    void call2() {
        ConvertDocumentRequest convertDocumentRequest = ConvertDocumentRequest.builder()
            .source(HttpSource.builder().url(URI.create("https://example.net")).build())
            .build();
    }

    void call3() {
        ConvertDocumentRequest convertDocumentRequest = ConvertDocumentRequest.builder()
            .source(HttpSource.builder().url(URI.create("https://example.net")).build())
            .build();
    }
}

Migrate to Arconia 0.20

io.arconia.rewrite.framework.UpgradeArconia_0_20

Migrate a Spring Boot application to the latest Arconia 0.20.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.19 (io.arconia.rewrite.framework.UpgradeArconia_0_19)

    • Migrate to Arconia 0.18 (io.arconia.rewrite.framework.UpgradeArconia_0_18)

      • Migrate to Arconia 0.17 (io.arconia.rewrite.framework.UpgradeArconia_0_17)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

      • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey ×14)

      • Change type (org.openrewrite.java.ChangeType ×2)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Change type (org.openrewrite.java.ChangeType)

    • Rename package name (org.openrewrite.java.ChangePackage)

    • Change method name (org.openrewrite.java.ChangeMethodName ×5)

    • Rename package name (org.openrewrite.java.ChangePackage)

    • Change method name (org.openrewrite.java.ChangeMethodName ×52)

    • Rename package name (org.openrewrite.java.ChangePackage)

    • Change method name (org.openrewrite.java.ChangeMethodName ×4)

    • Use source() methods instead of addHttpSources() or addFileSources() (io.arconia.rewrite.framework.docling.UseConvertDocumentRequestSourcesMethod)

    • Rename package name (org.openrewrite.java.ChangePackage)

    • Change method name (org.openrewrite.java.ChangeMethodName)

    • Rename package name (org.openrewrite.java.ChangePackage)

    • Change method name (org.openrewrite.java.ChangeMethodName ×14)

    • Change type (org.openrewrite.java.ChangeType)

    • Change method name (org.openrewrite.java.ChangeMethodName)

    • Use HealthCheckResponse.Builder instead of constructor (io.arconia.rewrite.framework.docling.UseHealthCheckResponseBuilder)

  • Migrate to Docling 0.3 (io.arconia.rewrite.docling.UpgradeDocling_0_3)

    • Migrate to Docling 0.2 (io.arconia.rewrite.docling.UpgradeDocling_0_2)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

      • Rename package name (org.openrewrite.java.ChangePackage ×2)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Rename package name (org.openrewrite.java.ChangePackage)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey)

Example

Before
arconia.docling.url=http://localhost:8080
After
arconia.docling.base-url=http://localhost:8080

Migrate to Arconia 0.21

io.arconia.rewrite.framework.UpgradeArconia_0_21

Migrate a Spring Boot application to the latest Arconia 0.21.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.20 (io.arconia.rewrite.framework.UpgradeArconia_0_20)

    • Migrate to Arconia 0.19 (io.arconia.rewrite.framework.UpgradeArconia_0_19)

      • Migrate to Arconia 0.18 (io.arconia.rewrite.framework.UpgradeArconia_0_18)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

      • Change type (org.openrewrite.java.ChangeType)

      • Rename package name (org.openrewrite.java.ChangePackage)

      • Change method name (org.openrewrite.java.ChangeMethodName ×5)

      • Rename package name (org.openrewrite.java.ChangePackage)

      • Change method name (org.openrewrite.java.ChangeMethodName ×52)

      • Rename package name (org.openrewrite.java.ChangePackage)

      • Change method name (org.openrewrite.java.ChangeMethodName ×4)

      • Use source() methods instead of addHttpSources() or addFileSources() (io.arconia.rewrite.framework.docling.UseConvertDocumentRequestSourcesMethod)

      • Rename package name (org.openrewrite.java.ChangePackage)

      • Change method name (org.openrewrite.java.ChangeMethodName)

      • Rename package name (org.openrewrite.java.ChangePackage)

      • Change method name (org.openrewrite.java.ChangeMethodName ×14)

      • Change type (org.openrewrite.java.ChangeType)

      • Change method name (org.openrewrite.java.ChangeMethodName)

      • Use HealthCheckResponse.Builder instead of constructor (io.arconia.rewrite.framework.docling.UseHealthCheckResponseBuilder)

    • Migrate to Docling 0.3 (io.arconia.rewrite.docling.UpgradeDocling_0_3)

      • Migrate to Docling 0.2 (io.arconia.rewrite.docling.UpgradeDocling_0_2)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

      • Rename package name (org.openrewrite.java.ChangePackage)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Rename Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.RenameSpringBootPropertyKey)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.22

io.arconia.rewrite.framework.UpgradeArconia_0_22

Migrate a Spring Boot application to the latest Arconia 0.22.x release.

Tags: arconia

Recipes applied

Example

Before
import io.arconia.dev.services.core.config.DevServicesProperties;
import io.arconia.dev.services.core.config.JdbcDevServicesProperties;
import io.arconia.dev.services.opentelemetry.OpenTelemetryDevServicesAutoConfiguration;
import io.arconia.dev.services.opentelemetry.OpenTelemetryDevServicesProperties;

class Demo {
    DevServicesProperties properties;
    JdbcDevServicesProperties jdbcProperties;
    OpenTelemetryDevServicesProperties otelProperties;
    OpenTelemetryDevServicesAutoConfiguration config;
}
After
import io.arconia.dev.services.api.config.BaseDevServicesProperties;
import io.arconia.dev.services.api.config.JdbcDevServicesProperties;
import io.arconia.dev.services.opentelemetry.collector.OtelCollectorDevServicesAutoConfiguration;
import io.arconia.dev.services.opentelemetry.collector.OtelCollectorDevServicesProperties;

class Demo {
    BaseDevServicesProperties properties;
    JdbcDevServicesProperties jdbcProperties;
    OtelCollectorDevServicesProperties otelProperties;
    OtelCollectorDevServicesAutoConfiguration config;
}

Migrate to Arconia 0.23

io.arconia.rewrite.framework.UpgradeArconia_0_23

Migrate a Spring Boot application to the latest Arconia 0.23.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.22 (io.arconia.rewrite.framework.UpgradeArconia_0_22)

    • Migrate to Arconia 0.21 (io.arconia.rewrite.framework.UpgradeArconia_0_21)

      • Migrate to Arconia 0.20 (io.arconia.rewrite.framework.UpgradeArconia_0_20)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Change the value of a Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.ChangeSpringBootPropertyValue ×54)

    • Change type (org.openrewrite.java.ChangeType ×4)

    • Change method name (org.openrewrite.java.ChangeMethodName)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.24

io.arconia.rewrite.framework.UpgradeArconia_0_24

Migrate a Spring Boot application to the latest Arconia 0.24.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.23 (io.arconia.rewrite.framework.UpgradeArconia_0_23)

    • Migrate to Arconia 0.22 (io.arconia.rewrite.framework.UpgradeArconia_0_22)

      • Migrate to Arconia 0.21 (io.arconia.rewrite.framework.UpgradeArconia_0_21)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

      • Change the value of a Spring Boot configuration property key (io.arconia.rewrite.spring.boot.properties.ChangeSpringBootPropertyValue ×54)

      • Change type (org.openrewrite.java.ChangeType ×4)

      • Change method name (org.openrewrite.java.ChangeMethodName)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.25

io.arconia.rewrite.framework.UpgradeArconia_0_25

Migrate a Spring Boot application to the latest Arconia 0.25.x release.

Tags: arconia

Recipes applied
  • Migrate to Arconia 0.24 (io.arconia.rewrite.framework.UpgradeArconia_0_24)

    • Migrate to Arconia 0.23 (io.arconia.rewrite.framework.UpgradeArconia_0_23)

      • Migrate to Arconia 0.22 (io.arconia.rewrite.framework.UpgradeArconia_0_22)

      • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

    • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

  • Upgrade Gradle or Maven dependency versions (org.openrewrite.java.dependencies.UpgradeDependencyVersion)

Migrate to Arconia 0.26

io.arconia.rewrite.framework.UpgradeArconia_0_26

Migrate a Spring Boot application to the latest Arconia 0.26.x release.

Tags: arconia

Recipes applied

Example

Before
import io.arconia.multitenancy.core.exceptions.TenantResolutionException;
import io.arconia.multitenancy.core.context.events.MdcTenantContextEventListener;
import io.arconia.multitenancy.core.events.TenantEvent;
import io.arconia.multitenancy.core.autoconfigure.tenantdetails.TenantDetailsConfiguration;
import io.arconia.multitenancy.core.autoconfigure.tenantdetails.TenantDetailsProperties;
import io.arconia.multitenancy.core.autoconfigure.tenantdetails.PropertiesTenantDetailsService;
import io.arconia.multitenancy.core.events.TenantEventPublisher;
import io.arconia.multitenancy.core.events.DefaultTenantEventPublisher;
import io.arconia.multitenancy.core.context.TenantContextHolder;

class Demo {
    TenantResolutionException ex;
    MdcTenantContextEventListener listener;
    TenantEvent event;
    TenantDetailsConfiguration config;
    TenantDetailsProperties props;
    PropertiesTenantDetailsService service;
    TenantEventPublisher publisher;
    DefaultTenantEventPublisher defaultPublisher;
    TenantContextHolder holder;
}
After
import io.arconia.multitenancy.core.autoconfigure.PropertiesTenantDetailsService;
import io.arconia.multitenancy.core.autoconfigure.TenantDetailsConfiguration;
import io.arconia.multitenancy.core.autoconfigure.TenantDetailsProperties;
import io.arconia.multitenancy.core.context.TenantContext;
import io.arconia.multitenancy.core.exceptions.TenantVerificationException;
import io.arconia.multitenancy.core.observability.MdcTenantEventListener;
import org.springframework.context.ApplicationEventPublisher;
import io.arconia.multitenancy.core.context.events.TenantEvent;

class Demo {
    TenantVerificationException ex;
    MdcTenantEventListener listener;
    TenantEvent event;
    TenantDetailsConfiguration config;
    TenantDetailsProperties props;
    PropertiesTenantDetailsService service;
    ApplicationEventPublisher publisher;
    ApplicationEventPublisher defaultPublisher;
    TenantContext holder;
}

Migrate to Arconia 0.27

io.arconia.rewrite.framework.UpgradeArconia_0_27

Migrate a Spring Boot application to the latest Arconia 0.27.x release.

Tags: arconia

Recipes applied

Example

Before
import io.arconia.observation.conventions.ObservationConventionsProvider;
import io.arconia.observation.autoconfigure.MultipleObservationConventionsException;

class Demo {
    ObservationConventionsProvider provider;
    MultipleObservationConventionsException ex;
}
After
import io.arconia.observation.autoconfigure.MultipleAiObservationConventionsException;
import io.arconia.observation.conventions.AiObservationConventionsProvider;

class Demo {
    AiObservationConventionsProvider provider;
    MultipleAiObservationConventionsException ex;
}

Migrate to Arconia 0.28

io.arconia.rewrite.framework.UpgradeArconia_0_28

Migrate a Spring Boot application to the latest Arconia 0.28.x release.

Tags: arconia

Recipes applied

Example

Before
plugins {
    id "java-library"
}

repositories {
    mavenCentral()
}

dependencies {
    implementation "io.arconia:arconia-kubernetes-service-binding"
}
After
plugins {
    id "java-library"
}

repositories {
    mavenCentral()
}

dependencies {
    implementation "org.springframework.cloud:spring-cloud-bindings:2.0.4"
}

Migrate to Arconia 0.29

io.arconia.rewrite.framework.UpgradeArconia_0_29

Migrate a Spring Boot application to the latest Arconia 0.29.x release.

Tags: arconia

Recipes applied

Example

Before
arconia.bootstrap.profiles.enabled=false
arconia.dev.profiles=local
spring.application.name=demo
After
spring.application.name=demo

Migrate to Arconia 0.30

io.arconia.rewrite.framework.UpgradeArconia_0_30

Migrate a Spring Boot application to the latest Arconia 0.30.x release.

Tags: arconia

Recipes applied

Example

Before
arconia.dev.services.pulsar.management-console-port=8080
After
arconia.dev.services.pulsar.admin-port=8080

framework › bootstrap

Recipes

Migrate the Arconia bootstrap properties to META-INF/arconia-bootstrap.properties

io.arconia.rewrite.framework.bootstrap.MigrateArconiaBootstrapProperties

The Arconia bootstrap properties are resolved before the application configuration is loaded, so they are no longer supported in the Spring application configuration files. This recipe moves them to META-INF/arconia-bootstrap.properties, creating or updating the file in the same source set and keeping the values already present there. Properties the new file cannot express (values with property placeholders, profile-specific configuration, conflicting values within a source set) are left in place and marked for manual review.

Example

Before
arconia.bootstrap.profiles.enabled=false
arconia.dev.profiles=local
spring.application.name=demo
After
spring.application.name=demo

framework › docling

Recipes

Use HealthCheckResponse.Builder instead of constructor

io.arconia.rewrite.framework.docling.UseHealthCheckResponseBuilder

Replace new HealthCheckResponse(STATUS) with HealthCheckResponse.builder().status(status).build().

Example

Before
import ai.docling.api.serve.health.HealthCheckResponse;

class Demo {
    HealthCheckResponse response() {
        return new HealthCheckResponse("ok");
    }
}
After
import ai.docling.api.serve.health.HealthCheckResponse;

class Demo {
    HealthCheckResponse response() {
        return HealthCheckResponse.builder().status("ok").build();
    }
}

Use source() methods instead of addHttpSources() or addFileSources()

io.arconia.rewrite.framework.docling.UseConvertDocumentRequestSourcesMethod

Replace .addHttpSources() or addFileSources() with .source(), wrapping arguments appropriately with HttpSource.builder() or FileSource.builder().

framework › multitenancy

Recipes

Use CookieTenantResolver.Builder instead of constructor

io.arconia.rewrite.framework.multitenancy.UseCookieTenantResolverBuilder

Replace new CookieTenantResolver(…​) with CookieTenantResolver.builder()…​.build().

Example

Before
import io.arconia.multitenancy.web.context.resolvers.CookieTenantResolver;

class Demo {
    CookieTenantResolver create(String tenantCookieName) {
        return new CookieTenantResolver(tenantCookieName);
    }
}
After
import io.arconia.multitenancy.web.context.resolvers.CookieTenantResolver;

class Demo {
    CookieTenantResolver create(String tenantCookieName) {
        return CookieTenantResolver.builder().tenantCookieName(tenantCookieName).build();
    }
}

Use FixedTenantResolver.Builder instead of constructor

io.arconia.rewrite.framework.multitenancy.UseFixedTenantResolverBuilder

Replace new FixedTenantResolver(…​) with FixedTenantResolver.builder()…​.build().

Example

Before
import io.arconia.multitenancy.core.context.resolvers.FixedTenantResolver;

class Demo {
    FixedTenantResolver create(String tenantIdentifier) {
        return new FixedTenantResolver(tenantIdentifier);
    }
}
After
import io.arconia.multitenancy.core.context.resolvers.FixedTenantResolver;

class Demo {
    FixedTenantResolver create(String tenantIdentifier) {
        return FixedTenantResolver.builder().tenantIdentifier(tenantIdentifier).build();
    }
}

Use HeaderTenantResolver.Builder instead of constructor

io.arconia.rewrite.framework.multitenancy.UseHeaderTenantResolverBuilder

Replace new HeaderTenantResolver(…​) with HeaderTenantResolver.builder()…​.build().

Example

Before
import io.arconia.multitenancy.web.context.resolvers.HeaderTenantResolver;

class Demo {
    HeaderTenantResolver create(String tenantHeaderName) {
        return new HeaderTenantResolver(tenantHeaderName);
    }
}
After
import io.arconia.multitenancy.web.context.resolvers.HeaderTenantResolver;

class Demo {
    HeaderTenantResolver create(String tenantHeaderName) {
        return HeaderTenantResolver.builder().tenantHeaderName(tenantHeaderName).build();
    }
}

Use MdcTenantEventListener.Builder instead of constructor

io.arconia.rewrite.framework.multitenancy.UseMdcTenantEventListenerBuilder

Replace new MdcTenantEventListener(…​) with MdcTenantEventListener.builder()…​.build().

Example

Before
import io.arconia.multitenancy.core.observability.MdcTenantEventListener;

class Demo {
    MdcTenantEventListener create(String tenantIdentifierKey) {
        return new MdcTenantEventListener(tenantIdentifierKey);
    }
}
After
import io.arconia.multitenancy.core.observability.MdcTenantEventListener;

class Demo {
    MdcTenantEventListener create(String tenantIdentifierKey) {
        return MdcTenantEventListener.builder().tenantIdentifierKey(tenantIdentifierKey).build();
    }
}

Use Tenant.builder() instead of constructor

io.arconia.rewrite.framework.multitenancy.UseTenantBuilderFactoryMethod

Replace new Tenant.Builder() with Tenant.builder().

Example

Before
import io.arconia.multitenancy.core.tenantdetails.Tenant;

class Demo {
    Tenant create() {
        return new Tenant.Builder().identifier("acme").build();
    }
}
After
import io.arconia.multitenancy.core.tenantdetails.Tenant;

class Demo {
    Tenant create() {
        return Tenant.builder().identifier("acme").build();
    }
}

Use TenantContextFilter.Builder instead of constructor

io.arconia.rewrite.framework.multitenancy.UseTenantContextFilterBuilder

Replace new TenantContextFilter(…​) with TenantContextFilter.builder()…​.build().

Example

Before
import io.arconia.multitenancy.core.tenantdetails.TenantVerifier;
import io.arconia.multitenancy.web.context.filters.TenantContextFilter;
import io.arconia.multitenancy.web.context.filters.TenantContextIgnorePathMatcher;
import io.arconia.multitenancy.web.context.resolvers.HttpRequestTenantResolver;
import org.springframework.context.ApplicationEventPublisher;

class Demo {
    TenantContextFilter create(HttpRequestTenantResolver resolver,
            TenantContextIgnorePathMatcher matcher,
            ApplicationEventPublisher publisher,
            TenantVerifier verifier) {
        return new TenantContextFilter(resolver, matcher, publisher, verifier);
    }
}
After
import io.arconia.multitenancy.core.tenantdetails.TenantVerifier;
import io.arconia.multitenancy.web.context.filters.TenantContextFilter;
import io.arconia.multitenancy.web.context.filters.TenantContextIgnorePathMatcher;
import io.arconia.multitenancy.web.context.resolvers.HttpRequestTenantResolver;
import org.springframework.context.ApplicationEventPublisher;

class Demo {
    TenantContextFilter create(HttpRequestTenantResolver resolver,
            TenantContextIgnorePathMatcher matcher,
            ApplicationEventPublisher publisher,
            TenantVerifier verifier) {
        return TenantContextFilter.builder().httpRequestTenantResolver(resolver).tenantContextIgnorePathMatcher(matcher).eventPublisher(publisher).tenantVerifier(verifier).build();
    }
}

Use TenantObservationFilter.Builder instead of constructor

io.arconia.rewrite.framework.multitenancy.UseTenantObservationFilterBuilder

Replace new TenantObservationFilter(…​) with TenantObservationFilter.builder()…​.build().

Example

Before
import io.arconia.multitenancy.core.observability.Cardinality;
import io.arconia.multitenancy.core.observability.TenantObservationFilter;

class Demo {
    TenantObservationFilter create(String tenantIdentifierKey, Cardinality cardinality) {
        return new TenantObservationFilter(tenantIdentifierKey, cardinality);
    }
}
After
import io.arconia.multitenancy.core.observability.Cardinality;
import io.arconia.multitenancy.core.observability.TenantObservationFilter;

class Demo {
    TenantObservationFilter create(String tenantIdentifierKey, Cardinality cardinality) {
        return TenantObservationFilter.builder().tenantIdentifierKey(tenantIdentifierKey).cardinality(cardinality).build();
    }
}

framework › opentelemetry

Composite recipes

Migrate from Spring Boot 3 OTLP to Arconia OpenTelemetry

io.arconia.rewrite.framework.opentelemetry.MigrateSpringBoot3OtlpToArconiaOpenTelemetry

Migrate a Spring Boot 3 application from the Spring Boot OTLP partial support to Arconia OpenTelemetry.

Tags: arconia, opentelemetry

Recipes applied

Example

Before
management.otlp.tracing.export.enabled=true
management.otlp.tracing.transport=http
management.otlp.tracing.endpoint=http://localhost:4318/v1/traces
management.otlp.tracing.headers=Authorization=Bearer token123,Custom-Header=value
management.otlp.tracing.compression=gzip
management.otlp.tracing.timeout=30s
management.otlp.tracing.connect-timeout=10s
After
arconia.otel.traces.enabled=true
arconia.otel.traces.exporter.otlp.protocol=http_protobuf
arconia.otel.traces.exporter.otlp.endpoint=http://localhost:4318/v1/traces
arconia.otel.traces.exporter.otlp.headers=Authorization=Bearer token123,Custom-Header=value
arconia.otel.traces.exporter.otlp.compression=gzip
arconia.otel.traces.exporter.otlp.timeout=30s
arconia.otel.traces.exporter.otlp.connect-timeout=10s

Migrate from Spring Boot 4 OTLP to Arconia OpenTelemetry

io.arconia.rewrite.framework.opentelemetry.MigrateSpringBoot4_0_OtlpToArconiaOpenTelemetry

Migrate a Spring Boot 4 application from the Spring Boot OTLP partial support to Arconia OpenTelemetry.

Tags: arconia, opentelemetry

Recipes applied

Example

Before
management.tracing.export.otlp.enabled=true
management.opentelemetry.tracing.export.otlp.transport=http
management.opentelemetry.tracing.export.otlp.endpoint=http://localhost:4318/v1/traces
management.opentelemetry.tracing.export.otlp.headers=Authorization=Bearer token123,Custom-Header=value
management.opentelemetry.tracing.export.otlp.compression=gzip
management.opentelemetry.tracing.export.otlp.timeout=30s
management.opentelemetry.tracing.export.otlp.connect-timeout=10s
After
arconia.otel.traces.enabled=true
arconia.otel.traces.exporter.otlp.protocol=http_protobuf
arconia.otel.traces.exporter.otlp.endpoint=http://localhost:4318/v1/traces
arconia.otel.traces.exporter.otlp.headers=Authorization=Bearer token123,Custom-Header=value
arconia.otel.traces.exporter.otlp.compression=gzip
arconia.otel.traces.exporter.otlp.timeout=30s
arconia.otel.traces.exporter.otlp.connect-timeout=10s

Deprecated recipes

These identifiers remain as aliases that delegate to their replacement and will be removed in a future release.

  • io.arconia.rewrite.MigrateSpringBoot3OtlpToArconiaOpenTelemetry — Deprecated. Use io.arconia.rewrite.framework.opentelemetry.MigrateSpringBoot3OtlpToArconiaOpenTelemetry instead.

  • io.arconia.rewrite.MigrateSpringBoot4_0_OtlpToArconiaOpenTelemetry — Deprecated. Use io.arconia.rewrite.framework.opentelemetry.MigrateSpringBoot4_0_OtlpToArconiaOpenTelemetry instead.

  • io.arconia.rewrite.UpgradeArconia_0_10 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_10 instead.

  • io.arconia.rewrite.UpgradeArconia_0_11 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_11 instead.

  • io.arconia.rewrite.UpgradeArconia_0_12 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_12 instead.

  • io.arconia.rewrite.UpgradeArconia_0_13 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_13 instead.

  • io.arconia.rewrite.UpgradeArconia_0_14 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_14 instead.

  • io.arconia.rewrite.UpgradeArconia_0_15 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_15 instead.

  • io.arconia.rewrite.UpgradeArconia_0_16 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_16 instead.

  • io.arconia.rewrite.UpgradeArconia_0_17 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_17 instead.

  • io.arconia.rewrite.UpgradeArconia_0_18 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_18 instead.

  • io.arconia.rewrite.UpgradeArconia_0_19 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_19 instead.

  • io.arconia.rewrite.UpgradeArconia_0_20 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_20 instead.

  • io.arconia.rewrite.UpgradeArconia_0_21 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_21 instead.

  • io.arconia.rewrite.UpgradeArconia_0_22 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_22 instead.

  • io.arconia.rewrite.UpgradeArconia_0_23 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_23 instead.

  • io.arconia.rewrite.UpgradeArconia_0_24 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_24 instead.

  • io.arconia.rewrite.UpgradeArconia_0_25 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_25 instead.

  • io.arconia.rewrite.UpgradeArconia_0_26 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_26 instead.

  • io.arconia.rewrite.UpgradeArconia_0_27 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_27 instead.

  • io.arconia.rewrite.UpgradeArconia_0_28 — Deprecated. Use io.arconia.rewrite.framework.UpgradeArconia_0_28 instead.