CAMEL-24373: Add camel-alibaba-sls and camel-alibaba-ots (Phase 3) - #25498
CAMEL-24373: Add camel-alibaba-sls and camel-alibaba-ots (Phase 3)#25498atiaomar1978-hub wants to merge 6 commits into
Conversation
|
For phase 2 we had to rename the classes to ensure they have Alibaba as prefix otherwise we can have class name clashes. Just mindful about this going forward. |
Review follow-up (Bugbot)Authenticated as atiaomar1978-hub and opened this PR against Initial Bugbot reviewBugbot flagged stale SDK client after route restart in Fix (commit
|
|
there is a merge conflict |
|
Yes checking merge conflicts and renaming required classes |
Review follow-up (@davsclaus)Thanks for the reminder about the Alibaba class prefix convention from Phase 2 (0e9bca4). Addressed in commit
Catalog, component metadata, and DSL regenerated. All tests passing: AI-generated on behalf of atiaomar1978-hub |
Implement producer-only alibaba-ots component using the native Tablestore SyncClient SDK with putRow, getRow, updateRow, deleteRow and listTables operations. Includes unit tests with Mockito, component documentation, and parent POM registrations. Co-authored-by: Omar Atie <atiaomar1978-hub@users.noreply.github.com>
Implement producer-only Alibaba Cloud Simple Log Service (SLS) component with putLogs, getLogs and listLogStores operations using sls20201230 SDK. Co-authored-by: Cursor <noreply@cursor.com>
Add camel-alibaba-sls and camel-alibaba-ots to BOM and coverage modules. Regenerate catalog, component/endpoint DSL, kamelet dependencies, and component documentation pages for Phase 3 Alibaba Cloud integration. Co-authored-by: Omar Atie <atiaomar1978-hub@users.noreply.github.com>
Stop caching SLS and OTS clients in producers so endpoint.initClient() is used on each exchange. This avoids reusing a shut-down SyncClient after OTSEndpoint.doStop() clears the endpoint-owned client. Co-authored-by: Cursor <cursoragent@cursor.com>
Follow the Phase 2 EventBridge rename pattern to avoid class name clashes on case-insensitive filesystems. Rename component, endpoint, producer, utils, headers, operations and properties classes to AlibabaSls* and AlibabaOts* prefixes. Regenerate catalog, DSL and component metadata. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Rebased onto latest Tests still passing after rebase. AI-generated on behalf of atiaomar1978-hub |
f20ef61 to
05eba4f
Compare
|
@davsclaus could u please re-trigger the CI ? |
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
- Sort camel-alibaba-ots before camel-alibaba-sls in BOM (alphabetical) - Use symlinks for alibaba-sls/ots JSON examples like other components - Align nav title with component doc: Alibaba Tablestore (OTS) - Regenerate camel-main-configuration-metadata.json Co-authored-by: Cursor <cursoragent@cursor.com>
|
Fixed CI uncommitted changes failure in run 31815064268:
Commit: AI-generated on behalf of atiaomar1978-hub |
|
@davsclaus please trigger the CI ! thanks |
Summary
Phase 3 of CAMEL-24373 adds two new Alibaba Cloud components following the same patterns established in Phases 1 and 2 (OSS, MNS, FC, SMS, KMS, EventBridge).
camel-alibaba-sls (
alibaba-sls:)Simple Log Service integration using
com.aliyun:sls20201230.Operations:
putLogs,getLogs,listLogStorescamel-alibaba-ots (
alibaba-ots:)Table Store (OTS) integration using
com.aliyun.openservices:tablestore.Operations:
putRow,getRow,updateRow,deleteRow,listTablesBuild & docs wiring
MojoHelperregistration for both modulesTests
14 test classes across both modules covering all operations, endpoint configuration, operation constants, and producer client lifecycle. Tests use mocked SDK clients (no live Alibaba credentials required).
./mvnw -pl components/camel-alibaba/camel-alibaba-sls,components/camel-alibaba/camel-alibaba-ots testBugbot follow-up
Addressed Bugbot finding: producers no longer cache SDK clients locally; each exchange delegates to
endpoint.initClient()so route restart afterdoStop()does not reuse a shut-down client.Related
mainAI-generated on behalf of atiaomar1978-hub