Dieser Artikel bietet eine Einführung in die Verwendung von Swagger zur Erstellung eines API-Clients.
API-Spezifikationen
Die index.json eines jeden Mikrodienstes enthält die jeweilige LMC-API-Spezifikation. Der Speicherort jeder index.json ist https://cloud.lancom.de/<micro-service>/api-docs/index.json.
Eine Möglichkeit, alle diese Dateien herunterzuladen, ist:
#!/bin/bash BASEURL=https://cloud.lancom.de # change this if you are using a private LMC if [ ! -d api-spec ]; then mkdir api-spec fi for i in auth backstage config control devices devicetunnel dsc \ fields geolocation jobs logging messaging monitoring notification \ preferences; # add missing services here do wget $BASEURL/cloud-service-$i/api-docs/index.json -O api-spec/$i.json done
Swagger-Code-Generator
Swagger bietet ein Java JAR, um Code aus einer gegebenen API-Spezifikation (index-json) zu generieren.
Sie können die neueste Version von hier herunterladen: https://github.com/swagger-api/swagger-codegen/releases
Java-Client
Das folgende Bash-Skript erzeugt einen Java-Client.
#!/bin/bash # usage: # command <index.json> <output-dir> java -Dapis -Dmodels -DsupportingFiles -Dmodels -jar swagger-codegen-cli.jar \ generate -l java \ --library resttemplate \ --additional-properties java8=true \ --api-package de.lcs.lmc.api \ --model-package de.lcs.lmc.dto \ --group-id de.lcs.lmc \ --artifact-id de.lcs.lmc.$(basename $1 .json) \ --artifact-version v1.0 \ -DdateLibrary=other \ -i $1 -o "$2/"