openapi-processor / openapi-processor/openapi-processor-spring

interpretation of openapi readOnly flag in model

Abierto
#334 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Kotlin
Estrellas
56
Forks
11
Merge medio
2 d 4 h
PR fusionados (30 d)
8

Descripción

Given a definition like:

``yaml

Data:
  type: object
  properties:        
    status:
      type: string)
      readOnly: true

get generated java:


```java

public record Data {
    @JsonProperty(value = "status", access = JsonProperty.Access.READ_ONLY)
    String status
) {}

This is correct if the generated code is for the provider of the interface (i.e. server-side). But if the code is to be the client of the interface, the field should instead be annotated with JsonProperty.Access.WRITE_ONLY.

So, as a feature request, it would be useful if there was a code generation option that declared the intended usage of the generated code.

See: https://fasterxml.github.io/jackson-annotations/javadoc/2.6/com/fasterxml/jackson/annotation/JsonProperty.Access.html

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

En el issue no se identifican archivos fuente, pruebas ni puntos de entrada. Empieza por rastrear cómo el generador asigna las propiedades readOnly de OpenAPI a las anotaciones de acceso de Jackson; después, determina dónde debería configurarse una opción de generación provider-versus-client y define pruebas que cubran ambos modos.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java, openapi, spring-boot
Área
backend-api-design, tooling
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.