lasdf1234 opened a new pull request, #11209: URL: https://github.com/apache/gravitino/pull/11209
### What changes were proposed in this pull request? This PR adds the built-in IdP logical layer in the `idp-basic` plugin for global user and group management: - Introduce `IdpUser` / `IdpGroup` models and corresponding metadata entities. - Add `IdpStore` / `IdpEntityStore` / `IdpJDBCBackend` for relational persistence. - Add `IdpUserGroupManager` as the business layer for user CRUD, group CRUD, membership changes, and password updates. - Add plugin-local exceptions (`AlreadyExistsException`, `NotFoundException`) and garbage collection for IdP entities. - Add H2-backed integration tests for `IdpUserGroupManager`, aligned with core Manager test patterns. ### Why are the changes needed? This is the logical-layer subtask for built-in IdP support (#10959). It provides the storage and management foundation required before exposing REST APIs and DTOs in follow-up work. Fix: #10966 ### Does this PR introduce _any_ user-facing change? No. This change is internal to the `idp-basic` plugin and does not expose new public APIs yet. ### How was this patch tested? - `./gradlew :plugins:idp-basic:test -PskipITs -PskipDockerTests=true` - `./gradlew :plugins:idp-basic:test -PskipITs -PskipDockerTests=false` (includes H2/MySQL/PostgreSQL docker-tagged tests on Mac with OrbStack) Made with [Cursor](https://cursor.com) -- 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]
