// 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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", "0AAA", } // 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 }