REST Domain Gateway
Usage
Render from P6M
Catalog
archetect
P6M -> Java -> Java REST Domain Gateway
Render from GitHub Repo
archetect render git@github.com:p6m-archetypes/java-spring-boot-rest-domain-gateway.archetype.git
For information about interacting with the service, refer to the README at the generated project's root.
Prompts
When rendering the archetype, you'll be prompted for the following values:
Property | Description | Example |
---|---|---|
org-name | Organization Name | afi, cpd, a1p |
solution-name | Solution Name | apps, xyz |
prefix | General name that represents the service domain that is used to set the entity, service, and RPC stub names | invoice, order, booking |
What's Inside
This archetype is based on the SpringBoot framework and uses Maven as its build system.
Features include:
- Out-of-the box endpoints, including
/health
,/info
,/metrics
,/env
and/threaddump
. - Simple CRUD over REST
- Integration with gRPC Service using it's Client
- Swagger UI (OpenAPI)
- SDLC GitHub Actions
- Docker image publication to artifactory
- Application configuration through property files, environment variables, and CLI arguments.
- Integration tests with gRPC Mock
Modules
Directory | Description |
---|---|
{project-name}-bom | Bill of Materials. |
{project-name}-core | Business Logic. Integration with gRPC Service. |
{project-name}-integration-tests | Leverages the HttpClient to test the Server and it's dependencies. |
{project-name}-server | Transport/Protocol Host. Wraps Core. |