Skip to content

ProgramacionCompetitivaUFPS/Java-AppWeb

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java-AppWeb

API REST en Spring para la conversión de archivos utilizando Aspose.

Como utilizar

La API tiene un solo endpoint (/convertir) con dos métodos HTTP, el método POST recibe un body de tipo json con el siguiente formato:

{
  "nombreArchivo": "nombre-del-archivo.docx",
  "extensionFuente": "DOCX",
  "extensionDestino": "PDF",
  "base64": "decodificacion-del-archivo-en-base64"
}

Y si la petición se completa exitosamente se recibe una respuesta con el siguiente formato:

{
    "nombreArchivo": "nombre-del-archivo.pdf",
    "base64": "decodificacion-del-archivo-en-base64"
}

El método (GET /convertir) retorna una lista con todas las conversiones disponibles:

[
    "DOCX a ODT",
    "DOCX a PDF",
    "ODT a DOCX",
    "ODT a PDF"
    "XLSX a ODS"
    "XLSX a PDF"
    "ODS a XLSX"
    "ODS a PDF"
    "PPTX a ODP"
    "PPTX a PDF"
    "ODP a PPTX"
    "ODP a PDF"
]

Para mayor información se puede observar la documentación con swagger con (GET /swagger-ui.html).

Para el front, hay una implementación en el siguiente link.

Contribuciones

Para agregar una conversion de una extencion A a una extencion B:

  1. Crear una clase que implemente la interfaz ConvertirUseCase en el paquete com.ufps.java.dominio.usecase
  • Para colocar la ubicación destino del archivo se recomienda utilizar UbicacionUtilidad.getUbicacion()
  1. Registrar el Bean en com.ufps.java.infraestructura.configuracion.BeanConfiguracion, esto se hace agregando un método así:
@Bean(name = "A_B")
ConvertirUseCase getConvertirABUseCaseImpl() {
        return new ConvertirABUseCaseImpl();
}
  • Donde A es la extensión fuente y B es la extensión destino.

Demo

Actualmente la API se encuentra en una instancia de EC2, accediendo al link de swagger se puede ver la documentación de la api.

Contribuidores

Licencia

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.5%
  • Dockerfile 0.5%