Remove handler name, use the last path segment to name the payload class

This commit is contained in:
Johan Maasing 2025-03-20 19:22:41 +01:00
parent 92098b1a3b
commit 20aa2becfb
Signed by: johan
GPG key ID: FFD31BABEE2DEED2
6 changed files with 24 additions and 22 deletions

View file

@ -1,4 +1,4 @@
package se.senashdev.projekt.api
package se.senashdev.project.api
import se.rutdev.projekt.api.HttpProtocol.VersionedResponse
import se.rutdev.framework.json.circe.RutUtilsCodec
@ -19,22 +19,15 @@ class Endpoints(override val config: OAuthUtils.OAuthConfig) extends framework.s
</#list>
<#list endpoints as endpoint>
case class ${endpoint.handler.name?cap_first}(
case class ${endpoint.handler.name?cap_first}Payload(
<#list endpoint.handler.fields as field>
${field.name} : ${field.type},
</#list>
)
</#list>
<#list datatypes as datatype>
given Codec[${datatype.name?cap_first}] = deriveCodec
</#list>
<#list endpoints as endpoint>
given Codec[${endpoint.handler.name?cap_first}] = deriveCodec
</#list>
<#list endpoints as endpoint>
val ${endpoint.handler.name}Endpoint = ApiEndpoint[${endpoint.handler.name?cap_first}, VersionedResponse] =
val ${endpoint.handler.name}Endpoint = ApiEndpoint[${endpoint.handler.name?cap_first}Payload, VersionedResponse] =
<#list endpoint.paths.paths>
apiV1Endpoint
.post
@ -42,7 +35,7 @@ class Endpoints(override val config: OAuthUtils.OAuthConfig) extends framework.s
.in("${segment}")
</#items>
.post
.in(jsonBody[${endpoint.handler.name?cap_first}])
.in(jsonBody[${endpoint.handler.name?cap_first}Payload])
.out(jsonBody[VersionedResponse])
</#list>
</#list>