flamenco/pkg/api/openapi_spec.gen.go
2022-06-02 16:25:38 +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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",
"q22XAAA=",
}
// 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
}