CAMEL-23491: Add known 3rd party plugin catalog to camel-jbang#23443
CAMEL-23491: Add known 3rd party plugin catalog to camel-jbang#23443davsclaus wants to merge 1 commit into
Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
@Croway do you have a better forage jbang plugin description we can use |
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
|
🧪 CI tested the following changed modules:
💡 Manual integration tests recommended:
All tested modules (6 modules)
|
|
for Forage, something like |
gnodet
left a comment
There was a problem hiding this comment.
Good feature -- the known-plugin catalog is a nice UX improvement. A couple of items to address:
-
FQCN in
PluginHelper.loadKnownPlugins():java.nio.charset.StandardCharsets.UTF_8is used inline instead of importingStandardCharsets. The project convention (and the OpenRewrite CI check) requires using simple class names with an import statement. -
Forage description: @Croway suggested a better description in the comments: "Configure components via opinionated bean factories". The
known-plugins.jsonshould be updated accordingly.
Otherwise the implementation looks clean, the tests are properly updated, and the documentation is good.
Claude Code on behalf of Guillaume Nodet
| String text = new String(is.readAllBytes(), java.nio.charset.StandardCharsets.UTF_8); | ||
| JsonArray arr = (JsonArray) Jsoner.deserialize(text); | ||
| List<JsonObject> result = new ArrayList<>(arr.size()); | ||
| for (Object o : arr) { |
There was a problem hiding this comment.
FQCN usage: java.nio.charset.StandardCharsets.UTF_8 should be replaced with StandardCharsets.UTF_8 and import java.nio.charset.StandardCharsets; added to the import block. The project convention (enforced by OpenRewrite in CI) forbids inline FQCNs.
| for (Object o : arr) { | |
| String text = new String(is.readAllBytes(), StandardCharsets.UTF_8); |
Claude Code on behalf of Guillaume Nodet
| { | ||
| "name": "forage", | ||
| "command": "forage", | ||
| "description": "Utilities for working with Forage components", |
There was a problem hiding this comment.
@Croway suggested a better description for Forage: "Configure components via opinionated bean factories".
| "description": "Utilities for working with Forage components", | |
| "description": "Configure components via opinionated bean factories", |
Claude Code on behalf of Guillaume Nodet
Summary
known-plugins.json) so users can install them by name without specifying GAV coordinates (e.g.,camel plugin add forage)vendorfield toPluginTypeenum to distinguish ASF vs Community pluginscamel plugin get --allnow shows three sections: active, supported (ASF), and known 3rd party (Community)--versionflag; defaults toLATESTfor 3rd party pluginsTest plan
camel plugin get --allshows vendor column and 3rd party sectioncamel plugin add forageauto-fills GAV from catalogcamel plugin add forage --version=1.2.3pins specific version🤖 Generated with Claude Code