Generador Datos Desafio Fork
Este proyecto expone un API REST que entrega la siguiente información:
id: identificador fechaCreacion: Fecha de inicio de la secuencia fechaFin: Fecha de fin de la secuencia fechas: Lista de fechas que están en el rango de la fecha que se encuentra en “fechaCreacion” hasta la fecha “fechaFin” Ejemplo.
{
"id": 6,
"fechaCreacion": "1968-08-01",
"fechaFin": "1971-06-01",
"fechas": ["1969-03-01", "1969-05-01", "1969-09-01", "1971-05-01"]
}
Nota: El formato de las fechas es yyyy-MM-dd El servicio entrega 1 periodos, el periodo contiene una fecha inicial una fecha final y una lista fechas.
Detalle de los sistemas
Swagger Codegen 2.3.1 (OpenApi 2.0) Java 8 Spring-Boot 1.5.11.RELEASE Maven 3
Compilar y ejecutar el proyecto
Para copilar el proyecto se requiere Java y Maven instalado. Ingresar al directorio ApiPeriodos ejecutar el siguiente comando maven
mvn package
Luego de compilar el proyecto ingresar al directorio target ejecutar el siguiente comando java
java -jar .\api-periodos-1.0.0.jar
Nota: Debe estar disponible el puerto 8080 en el PC donde se ejecute esta API
Visualizar Documentación y consumir la API
La documentación swagger del API (una vez que se levanta el API) queda disponible en
http://127.0.0.1:8080/periodos/swagger-ui.html#/
Para consumir el servicio se debe invocar la siguiente URL
curl -X GET --header 'Accept: application/json' 'http://127.0.0.1:8080/periodos/api'
Regenerar API a partir de yaml
Las siguientes instrucciones solo son para re-escribir el API si es necesario agregar una nueva funcionalidad a partir del YAML.
Bajar SwaggerCodeGen 2.3.1 en la raíz del proyecto, ejecutando el siguiente comando por consola.
wget http://oss.sonatype.org/content/repositories/releases/io/swagger/swagger-codegen-cli/2.3.1/swagger-codegen-cli-2.3.1.jar -O swagger-codegen-cli.jar
Para re-crear el código a partir de la definición del YAML de swagger ejecutar el siguiente comando
java -jar .\swagger-codegen-cli.jar generate -i .\swagger\periodos.yaml -l spring -c .\swagger\config.json -o ApiPeriodos --ignore-file-override .\.swagger-codegen-ignore
Nota: Esto creara toda la estructura de swagger y re-escribirá todas las clases que no estén declaradas en el archivo .swagger-codegen-ignore