// 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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", "e3e++28AAAD//9hZQfR1IQAA", } // 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 }