// 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 }