#Swagger Levanta un servidor en silex que posee todas las url de listados unificados. Las url disponibles son: - /api/v1/ftth/nap - /api/v1/ftth/naps - /api/v1/ftth/onumodel - /api/v1/ftth/onumodels - /api/v1/ftth/oltmodel - /api/v1/ftth/oltmodels - /api/v1/ftth/profile - /api/v1/ftth/profiles - /api/v1/cablemodem/node - /api/v1/cablemodem/nodes - /api/v1/cablemodem/profile - /api/v1/cablemodem/profiles ##run.sh El archivo ejecuta el servidor silex en elpuerto 8088. Se debe configurar ip de escuvha. ##runSwaggerCreate.sh (escribiendo esto recién me doy cuenta que se puede ejecutar por docker :() Crea a partir de las librerías en java las clases para php. Página de referencia [swagger-codegen](https://github.com/swagger-api/swagger-codegen) Modificar el archivo y modificar las opciones: - library.jar: lugar donde se encuentra las librerías de java. Esto se especifica en la página de referencia. - swagger-ui/file.json: Contiene la url del server swagger-ui y el nombre del archivo que se utilizará para la generación de los archivos. - outputFloder: Carpeta destino donde se guardaran los archivos generados. ## Incorporar los nuevas clases a la estructura Tomamos como ejemplo FTTH. Una vez que se generaron los archivos se deben modificar los siguientes archivos: - Api/fileApi.php: * Buscar `Swagger\Client\Api` y reemplazarlo por `Swagger\Client\FTTH\Api`. NO REEMPLAZAR `use Swagger\Client\ApiException;` * Buscar `Swagger\Client\Model` y reemplazarlo por `Swagger\Client\FTTH\Model` * Buscar `@package Swagger\Client` y reemplazarlo por `@package Swagger\Client\FTTH` * Buscar `ObjectSerializer::deserialize` y agregar como primer parámetro de la función `Configuration::getDefaultConfiguration()->getTempFolderPath()` * Buscar `use Swagger\Client\Configuration;` y reemplazarlo por `use Swagger\Client\FTTH\Configuration;` - Model/file.php: Modelado del objeto. Dentro de este archivo se debe modificar: * Buscar `Swagger\Client` y reemplazarlo por `Swagger\Client\FTTH` Agregar la siguiente linea `use \Swagger\Client\Model\ModelInterface;` - Configuration.php: Contiene la configuración para conectarse al server (base|ftth|cablemodem|etc). Modificar: * Buscar `Swagger\Client` y reemplazarlo por `Swagger\Client\FTTH` * Buscar `@package Swagger\Client` y reemplazarlo por `@package Swagger\Client\FTTH` Mover los archivos a las carpetas correspondientes: - Carpeta Api: Contiene todas las apis. - Carpeta Model: Contiene todos los modelos. - Configuration: Va en la raíz. No hace falta reemplazarlo con cada generación, salvo que cambie la url de referencia. ##Agregar url Todoas las urls se agregar en el archivo `src/app.php`. Existen varios ejemplos comentados.