Implement contracts

This commit is contained in:
Paul-Henri Froidmont 2025-10-06 18:30:22 +02:00
parent 31014d1a0c
commit efdc50eb1d
Signed by: phfroidmont
GPG key ID: BE948AFD7E7873BE
33 changed files with 879 additions and 173 deletions

View file

@ -0,0 +1,24 @@
package lu.foyer
package contracts
import zio.*
import zio.Console.*
import zio.http.*
import zio.http.codec.*
import zio.http.codec.PathCodec.path
import zio.http.endpoint.*
import zio.schema.*
import java.net.URI
import java.time.LocalDate
import java.util.UUID
class ContractController(
val commandEngine: CommandEngine[ContractCommand, ContractEvent, ContractState])
extends CommandEngineController[ContractCommand, ContractEvent, ContractState]:
override val onthology = "org:example:insurance:contract"
override val entityName = "contracts"
override val allEntities = List("clients", "contracts")
object ContractController:
val layer = ZLayer.fromFunction(ContractController.apply)