UIEXT-3554: Split legacy API from EffectPredicateProvider#192
UIEXT-3554: Split legacy API from EffectPredicateProvider#192PaulBrnrther wants to merge 1 commit intomasterfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Updates several node-parameter classes to use the new extension-point based legacy predicate initializers instead of casting the PredicateInitializer to the legacy API, aligning with UIEXT-3554’s goal of splitting legacy API usage from EffectPredicateProvider.
Changes:
- Replace
((LegacyPredicateInitializer)i)...calls withi.getRegisteredPredicateInitializer(...).getLegacy...in effect predicate providers. - Update imports to reference the new legacy predicate initializer types (
LegacyMultiFileSelectionPredicateInitializer,LegacyFileWriterPredicateInitializer).
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
.../TransferFilesFileChooserNodeParameters.java |
Switches legacy multi-file selection predicate init to registered initializer API. |
.../CompressFileChooserNodeParameters.java |
Switches legacy multi-file selection predicate init to registered initializer API. |
.../LineReaderNodeParameters.java |
Switches legacy multi-file selection predicate init to registered initializer API. |
.../CSVWriter2NodeParameters.java |
Switches legacy file-writer predicate init to registered initializer API. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| import org.knime.node.parameters.updates.ValueProvider; | ||
| import org.knime.node.parameters.updates.ValueReference; | ||
| import org.knime.node.parameters.updates.legacy.LegacyPredicateInitializer; | ||
| import org.knime.node.parameters.legacy.widget.file.LegacyMultiFileSelectionPredicateInitializer; |
There was a problem hiding this comment.
The new LegacyMultiFileSelectionPredicateInitializer import is separated from the other legacy widget imports (lines 81–82). Please keep org.knime.node.parameters.legacy.widget.file.* imports grouped together for consistent import organization.
| import org.knime.node.parameters.updates.ParameterReference; | ||
| import org.knime.node.parameters.updates.ValueReference; | ||
| import org.knime.node.parameters.updates.legacy.LegacyPredicateInitializer; | ||
| import org.knime.node.parameters.legacy.widget.file.LegacyMultiFileSelectionPredicateInitializer; |
There was a problem hiding this comment.
Consider moving the new LegacyMultiFileSelectionPredicateInitializer import next to the other legacy widget imports (e.g. LegacyMultiFileSelection at line 86) to preserve the existing import grouping in this file.
| import org.knime.node.parameters.updates.ValueProvider; | ||
| import org.knime.node.parameters.updates.ValueReference; | ||
| import org.knime.node.parameters.updates.legacy.LegacyPredicateInitializer; | ||
| import org.knime.node.parameters.legacy.widget.file.LegacyFileWriterPredicateInitializer; |
There was a problem hiding this comment.
The LegacyFileWriterPredicateInitializer import is currently placed after the updates.* imports, while other legacy widget imports are grouped at lines 76–77. Please move it alongside the other org.knime.node.parameters.legacy.widget.file.* imports to keep import grouping consistent.
| import org.knime.node.parameters.updates.ParameterReference; | ||
| import org.knime.node.parameters.updates.ValueReference; | ||
| import org.knime.node.parameters.updates.legacy.LegacyPredicateInitializer; | ||
| import org.knime.node.parameters.legacy.widget.file.LegacyMultiFileSelectionPredicateInitializer; |
There was a problem hiding this comment.
The new LegacyMultiFileSelectionPredicateInitializer import breaks the existing grouping of legacy widget imports (currently grouped at lines 68–70). Please move this import alongside the other org.knime.node.parameters.legacy.widget.file.* imports to keep the import organization consistent in this file.
| .getLegacyMultiFileSelection(SourceFileChooserRef.class).getSelectionMode() | ||
| .isOneOf(MultiFileSelectionMode.FOLDER); |
There was a problem hiding this comment.
The continuation indentation of this fluent call chain is inconsistent (the chained lines are indented more than the surrounding style used in similar classes, e.g. CompressFileChooserNodeParameters). Please reformat to match the project's typical method-chaining indentation for readability.
| .getLegacyMultiFileSelection(SourceFileChooserRef.class).getSelectionMode() | |
| .isOneOf(MultiFileSelectionMode.FOLDER); | |
| .getLegacyMultiFileSelection(SourceFileChooserRef.class).getSelectionMode() | |
| .isOneOf(MultiFileSelectionMode.FOLDER); |
|
UIEXT-3554 (Use an extension point for enhancing the EffectPredicateProvider (and rewrite the one for LegacyMultiFileSelection))
b9b03e7 to
316d186
Compare



UIEXT-3554 (Use an extension point for enhancing the EffectPredicateProvider (and rewrite the one for LegacyMultiFileSelection))