Skip to content

chore(QTDI-2896): S6208 Switch case merging#1234

Open
undx wants to merge 2 commits into
masterfrom
ouf/QTDI-2896-Switch-case-merging
Open

chore(QTDI-2896): S6208 Switch case merging#1234
undx wants to merge 2 commits into
masterfrom
ouf/QTDI-2896-Switch-case-merging

Conversation

@undx
Copy link
Copy Markdown
Member

@undx undx commented May 29, 2026

https://qlik-dev.atlassian.net/browse/QTDI-2896

AI generated code

https://internal.qlik.dev/general/ways-of-working/code-reviews/#guidelines-for-ai-generated-code

  • [] this PR has been written with the help of GitHub Copilot or another generative AI tool

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR applies Java’s multi-label switch case syntax to merge equivalent case branches across the codebase, addressing Sonar rule S6208 (“Switch case merging”) without changing runtime behavior.

Changes:

  • Replaced repeated case fall-through patterns with multi-label case A, B: syntax.
  • Applied the refactor consistently across multiple modules (runtime, tools, studio, docs, starter server).
  • Kept existing control flow/return values intact while simplifying switch statements.

Reviewed changes

Copilot reviewed 24 out of 24 changed files in this pull request and generated no comments.

Show a summary per file
File Description
singer-parent/component-kitap/src/main/java/org/talend/sdk/component/singer/kitap/Kitap.java Merged boolean JsonValue switch cases into a multi-label case.
singer-parent/component-kitap/src/main/java/org/talend/sdk/component/singer/kitap/JsonSchemaGenerator.java Consolidated schema type mappings by merging equivalent switch cases.
documentation/src/main/java/org/talend/runtime/documentation/Github.java Merged equivalent login normalization cases.
component-tools/src/main/java/org/talend/sdk/component/tools/DocBaseGenerator.java Merged parameter type cases producing default values.
component-tools/src/main/java/org/talend/sdk/component/tools/AsciidoctorExecutor.java Merged backend cases for html/html5 handling.
component-studio/component-runtime-di/src/main/java/org/talend/sdk/component/runtime/di/schema/TaCoKitGuessSchema.java Merged TRUE/FALSE JsonValue cases when mapping Talend types.
component-studio/component-runtime-di/src/main/java/org/talend/sdk/component/runtime/di/record/DiRowStructVisitor.java Consolidated multiple StudioTypes case groups into multi-label cases.
component-starter-server/src/main/java/org/talend/sdk/component/starter/server/service/openapi/OpenAPIGenerator.java Merged JSON default value and parameter marker switch cases.
component-starter-server/src/main/java/org/talend/sdk/component/starter/server/service/facet/util/NameConventions.java Merged “int”/“integer” mapping cases.
component-server-parent/component-server/src/main/java/org/talend/sdk/component/server/service/SimpleQueryLanguageCompiler.java Merged combiner token cases (AND/OR).
component-runtime-manager/src/test/java/org/talend/sdk/component/runtime/manager/service/record/FakeRecordBuilderFactoryProvider.java Merged factory selection cases (“memory”/“default”).
component-runtime-manager/src/main/java/org/talend/sdk/component/runtime/manager/xbean/converter/ZonedDateTimeConverter.java Merged same-behavior length cases in date/time parsing switch.
component-runtime-manager/src/main/java/org/talend/sdk/component/runtime/manager/util/DefaultValueInspector.java Merged primitive-like parameter type cases when stringifying defaults.
component-runtime-manager/src/main/java/org/talend/sdk/component/runtime/manager/reflect/visibility/PayloadMapper.java Merged STRING/ENUM cases for payload mapping and array primitive conversion.
component-runtime-manager/src/main/java/org/talend/sdk/component/runtime/manager/reflect/ParameterModelService.java Merged simple type cases when building parameter metas.
component-runtime-manager/src/main/java/org/talend/sdk/component/runtime/manager/chain/internal/DSLParser.java Merged decoding-trigger characters in query parsing switch.
component-runtime-impl/src/main/java/org/talend/sdk/component/runtime/record/RecordConverters.java Merged TRUE/FALSE JSON cases in json-to-record conversion.
component-runtime-impl/src/main/java/org/talend/sdk/component/runtime/record/RecordBuilderFactoryImpl.java Merged RECORD/ARRAY schema builder cases.
component-runtime-beam/src/main/java/org/talend/sdk/component/runtime/beam/transform/avro/SchemalessJsonToIndexedRecord.java Merged boolean JSON cases in schema guessing.
component-runtime-beam/src/main/java/org/talend/sdk/component/runtime/beam/spi/record/AvroSchema.java Merged MAP/UNION/NULL cases in Avro type handling.
component-runtime-beam/src/main/java/org/talend/sdk/component/runtime/beam/spi/AvroRecordBuilderFactoryProvider.java Merged factory selection cases (“memory”/“default”).
component-form/component-form-core/src/main/java/org/talend/sdk/component/form/internal/validation/spi/ext/BaseValidation.java Merged TRUE/FALSE cases for boolean validation path.
component-form/component-form-core/src/main/java/org/talend/sdk/component/form/internal/converter/impl/widget/DateTimeConverter.java Merged datetime/zoneddatetime widget selection cases.
component-form/component-form-core/src/main/java/org/talend/sdk/component/form/internal/converter/impl/widget/AbstractWidgetConverter.java Merged contains operator variants into one case branch.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sonar-rnd
Copy link
Copy Markdown

sonar-rnd Bot commented May 29, 2026

Failed Quality Gate failed

  • 0.00% Coverage on New Code (is less than 80.00%)
  • 1 New Issues (is greater than 0)

Project ID: org.talend.sdk.component:component-runtime

View in SonarQube

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants