How danvega/jev-spring-boot-starter works
Jev is a Spring Boot starter that lets an MVC application submit typed questions about application state to TypeSafe Jev and receive validated, named answers. The main workflow is application → JevClient → remote evaluation → JevResponse and typed Answer values. Question and request models define the input; Spring auto-configuration provides a configured client from properties when one is not supplied by the application. Source excerpts establish the client’s HTTP call and configuration wiring; the example endpoint implementation was not sampled.
Main entry points: JevClient.java Jev client · JevAutoConfiguration.java Client auto-configuration · JevRequest.java Evaluation request · JevResponse.java Evaluation response
Components 10
Request and answer models
- Typed questions
src/main/java/dev/danvega/jev/Question.java - Evaluation request
src/main/java/dev/danvega/jev/JevRequest.java - Typed answers
src/main/java/dev/danvega/jev/Answer.java - Evaluation response
src/main/java/dev/danvega/jev/JevResponse.java
Evaluation runtime
- Jev client
src/main/java/dev/danvega/jev/JevClient.java - TypeSafe Jev API
Spring configuration
- Client auto-configuration
src/main/java/dev/danvega/jev/autoconfigure/JevAutoConfiguration.java - Jev properties
src/main/java/dev/danvega/jev/autoconfigure/JevProperties.java - Spring RestClient
Other components
- MVC application
Connections 11
- MVC application → Jev client: evaluates with
README.md - MVC application → Typed questions: defines
README.md - Jev client → Evaluation request: builds request
src/main/java/dev/danvega/jev/JevClient.java - Evaluation request → Typed questions: contains
src/main/java/dev/danvega/jev/JevRequest.java - Jev client → TypeSafe Jev API: posts evaluation
src/main/java/dev/danvega/jev/JevClient.java - Jev client → Evaluation response: decodes and validates
src/main/java/dev/danvega/jev/JevClient.java - Evaluation response → Typed answers: contains answers
src/main/java/dev/danvega/jev/JevResponse.java - Client auto-configuration → Jev properties: enables properties
src/main/java/dev/danvega/jev/autoconfigure/JevAutoConfiguration.java - Client auto-configuration → Spring RestClient: clones builder
src/main/java/dev/danvega/jev/autoconfigure/JevAutoConfiguration.java - Client auto-configuration → Jev client: registers bean
src/main/java/dev/danvega/jev/autoconfigure/JevAutoConfiguration.java - Jev properties → Client auto-configuration: provides settings
src/main/java/dev/danvega/jev/autoconfigure/JevAutoConfiguration.java