// 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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", "cbTy12m5AAA=", } // 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 }