lizhimins opened a new pull request, #1231: URL: https://github.com/apache/rocketmq-dashboard/pull/1231
## Summary Architecture convergence and code-style unification on top of the multi-vendor instance support: **Architecture (converged onto one abstraction)** - Resource counts unified behind the provider SPI: `countTopics/countGroups` (apache reads the DB, aliyun reads OpenAPI); repository no longer computes counts, `InstanceService` has zero vendor branches - Admin clients single-tracked: the global `DefaultMQAdminExt` singleton is gone; every open-source implementation goes through `MqAdminExtFactory` (per-address cache, lazy connect) - Read paths converged: `MetadataProvider`/`AdminClient` demoted to provider-internal SPIs, the whole `rocketmq/` layer merged into `provider/apache`, and `MetadataService` routes every operation through `InstanceProviderRegistry` (blank instance id defaults to the Apache provider; only the AI tools keep the legacy cluster-scoped read) **Code style (user-ratified conventions)** - Lombok unified: 72 files converted (~700 hand-written getters/setters removed, `@RequiredArgsConstructor` injection, `@Slf4j` logging); interfaces/enums/records/static utils skipped deliberately - Controller contracts: write endpoints take validated DTOs, responses wrapped in `Result<T>`, plain numeric `BusinessException` codes - Dead/duplicate code removed: `CloudMetadataProvider`, namespace placeholder API, credential base64/mask helpers deduped into `CredentialUtils`, three isomorphic delete DTOs merged, query history consolidated into `instance.message` - Database renamed `rocketmq_studio` -> `rocketmq` (config, compose, init and upgrade scripts) - New `server/README.md` documenting the package structure and conventions ## Verification - 761/761 backend unit tests pass; 84 frontend test files pass; production build clean - Deployed to a live environment with a real Aliyun RocketMQ 5.x instance: database migrated via atomic table renames, all endpoints verified -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
