package Ġbr . com . d ill mann . rest db . domain . metadata . openapi Ċ Ċ import Ġbr . com . d ill mann . rest db . core . environment . Environment Variables Ċ import Ġbr . com . d ill mann . rest db . domain . metadata . model . Database Metadata Ċ import Ġio . swagger . v 3 . o as . models . Components Ċ import Ġio . swagger . v 3 . o as . models . External Documentation Ċ import Ġio . swagger . v 3 . o as . models . Open API Ċ import Ġio . swagger . v 3 . o as . models . info . Info Ċ import Ġio . swagger . v 3 . o as . models . servers . Server Ċ Ċ /** Ċ Ġ* ĠConverts Ġa Ġ[ Database Metadata ] Ġinto Ġan Ġ[ Open API ] Ġobject Ċ Ġ* Ċ Ġ* Ġ@ author ĠLuc as ĠD ill mann Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 , Ġ 2 0 2 0 - 0 4 - 1 2 Ċ Ġ*/ Ċ fun ĠDatabase Metadata . as Open Api (): ĠOpenAPI Ġ= ĊĠĠĠ ĠOpenAPI (). also Ġ{ ĊĠĠĠĠĠĠĠ Ġit . info Ġ= Ġas Open Api Info () ĊĠĠĠĠĠĠĠ Ġit . external Docs Ġ= Ġbuild External Documentation () ĊĠĠĠĠĠĠĠ Ġit . servers Ġ= Ġbuild Servers () ĊĠĠĠĠĠĠĠ Ġit . paths Ġ= Ġas Open Api Paths () ĊĠĠĠĠĠĠĠ Ġit . components Ġ= Ġas Open Api Components () ĊĠĠĠ Ġ} Ċ Ċ /** Ċ Ġ* ĠConverts Ġa Ġ[ Database Metadata ] Ġinto Ġan ĠOpenAPI Ġ[ Components ] Ġobject Ċ Ġ* Ċ Ġ* Ġ@ author ĠLuc as ĠD ill mann Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 , Ġ 2 0 2 0 - 0 4 - 1 2 Ċ Ġ*/ Ċ private Ġfun ĠDatabase Metadata . as Open Api Components () Ġ= ĊĠĠĠ ĠComponents (). also Ġ{ ĊĠĠĠĠĠĠĠ Ġit . schemas Ġ= Ġas Open Api Schemas () ĊĠĠĠ Ġ} Ċ Ċ /** Ċ Ġ* ĠConverts Ġa Ġ[ Database Metadata ] Ġinto Ġan ĠOpenAPI Ġ[ Info ] Ġobject Ċ Ġ* Ċ Ġ* Ġ@ author ĠLuc as ĠD ill mann Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 , Ġ 2 0 2 0 - 0 4 - 1 2 Ċ Ġ*/ Ċ private Ġfun ĠDatabase Metadata . as Open Api Info (): ĠInfo Ġ= ĊĠĠĠ ĠInfo (). also Ġ{ ĊĠĠĠĠĠĠĠ Ġit . title Ġ= Ġ" rest db " ĊĠĠĠĠĠĠĠ Ġit . description Ġ= Ġ" HTTP ĠREST ĠAPIs Ġfor Ġ$ database Ġusing Ġ$ driver " ĊĠĠĠĠĠĠĠ Ġit . version Ġ= ĠEnvironment Variables . application Version ĊĠĠĠ Ġ} Ċ Ċ /** Ċ Ġ* ĠCreates Ġan Ġ[ External Documentation ] Ġwith Ġreference Ġto Ġproject ĠGitHub Ġrepository Ċ Ġ* Ċ Ġ* Ġ@ author ĠLuc as ĠD ill mann Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 , Ġ 2 0 2 0 - 0 4 - 1 2 Ċ Ġ*/ Ċ private Ġfun Ġbuild External Documentation (): ĠExternal Documentation Ġ= ĊĠĠĠ ĠExternal Documentation (). also Ġ{ ĊĠĠĠĠĠĠĠ Ġit . description Ġ= Ġ" rest db Ġdocumentation " ĊĠĠĠĠĠĠĠ Ġit . url Ġ= Ġ" https :// github . com / luc asd ill mann / rest db " ĊĠĠĠ Ġ} Ċ Ċ /** Ċ Ġ* ĠCreates Ġa Ġ[ List ] Ġof ĠOpenAPI Ġ[ Server ] Ġobjects Ġwith Ġreference Ġto Ġcurrent Ġapplication Ġhost Ġand Ġport Ċ Ġ* Ċ Ġ* Ġ@ author ĠLuc as ĠD ill mann Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 , Ġ 2 0 2 0 - 0 4 - 1 2 Ċ Ġ*/ Ċ private Ġfun Ġbuild Servers (): ĠList < Server > Ġ{ ĊĠĠĠ Ġval Ġserver Ġ= ĠServer (). also Ġ{ ĊĠĠĠĠĠĠĠ Ġit . url Ġ= ĠEnvironment Variables . external Url ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn ĠlistOf ( server ) Ċ } Ċ