189 lines
10 KiB
Go
189 lines
10 KiB
Go
// Package api provides primitives to interact with the openapi HTTP API.
|
|
//
|
|
// Code generated by github.com/deepmap/oapi-codegen version v1.9.0 DO NOT EDIT.
|
|
package api
|
|
|
|
import (
|
|
"bytes"
|
|
"compress/gzip"
|
|
"encoding/base64"
|
|
"fmt"
|
|
"net/url"
|
|
"path"
|
|
"strings"
|
|
|
|
"github.com/getkin/kin-openapi/openapi3"
|
|
)
|
|
|
|
// Base64 encoded, gzipped, json marshaled Swagger object
|
|
var swaggerSpec = []string{
|
|
|
|
"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",
|
|
}
|
|
|
|
// GetSwagger returns the content of the embedded swagger specification file
|
|
// or error if failed to decode
|
|
func decodeSpec() ([]byte, error) {
|
|
zipped, err := base64.StdEncoding.DecodeString(strings.Join(swaggerSpec, ""))
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error base64 decoding spec: %s", err)
|
|
}
|
|
zr, err := gzip.NewReader(bytes.NewReader(zipped))
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error decompressing spec: %s", err)
|
|
}
|
|
var buf bytes.Buffer
|
|
_, err = buf.ReadFrom(zr)
|
|
if err != nil {
|
|
return nil, fmt.Errorf("error decompressing spec: %s", err)
|
|
}
|
|
|
|
return buf.Bytes(), nil
|
|
}
|
|
|
|
var rawSpec = decodeSpecCached()
|
|
|
|
// a naive cached of a decoded swagger spec
|
|
func decodeSpecCached() func() ([]byte, error) {
|
|
data, err := decodeSpec()
|
|
return func() ([]byte, error) {
|
|
return data, err
|
|
}
|
|
}
|
|
|
|
// Constructs a synthetic filesystem for resolving external references when loading openapi specifications.
|
|
func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error) {
|
|
var res = make(map[string]func() ([]byte, error))
|
|
if len(pathToFile) > 0 {
|
|
res[pathToFile] = rawSpec
|
|
}
|
|
|
|
return res
|
|
}
|
|
|
|
// GetSwagger returns the Swagger specification corresponding to the generated code
|
|
// in this file. The external references of Swagger specification are resolved.
|
|
// The logic of resolving external references is tightly connected to "import-mapping" feature.
|
|
// Externally referenced files must be embedded in the corresponding golang packages.
|
|
// Urls can be supported but this task was out of the scope.
|
|
func GetSwagger() (swagger *openapi3.T, err error) {
|
|
var resolvePath = PathToRawSpec("")
|
|
|
|
loader := openapi3.NewLoader()
|
|
loader.IsExternalRefsAllowed = true
|
|
loader.ReadFromURIFunc = func(loader *openapi3.Loader, url *url.URL) ([]byte, error) {
|
|
var pathToFile = url.String()
|
|
pathToFile = path.Clean(pathToFile)
|
|
getSpec, ok := resolvePath[pathToFile]
|
|
if !ok {
|
|
err1 := fmt.Errorf("path not found: %s", pathToFile)
|
|
return nil, err1
|
|
}
|
|
return getSpec()
|
|
}
|
|
var specData []byte
|
|
specData, err = rawSpec()
|
|
if err != nil {
|
|
return
|
|
}
|
|
swagger, err = loader.LoadFromData(specData)
|
|
if err != nil {
|
|
return
|
|
}
|
|
return
|
|
}
|