flamenco/pkg/api/openapi_spec.gen.go
2022-06-16 11:02:04 +02:00

227 lines
14 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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",
"/wAAAP//yTkr37mXAAA=",
}
// 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
}