X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=capifcore%2Finternal%2Floggingapi%2Floggingapi-server.gen.go;fp=capifcore%2Finternal%2Floggingapi%2Floggingapi-server.gen.go;h=13948bbf6ded3b40a54b8bc7fad51d44ac202cda;hb=c9e08b2a2f647f9f870040570c5e71305f0fb5d2;hp=0000000000000000000000000000000000000000;hpb=8fcfa4ecde6d95ead33c34b0e7efc4933ad44444;p=nonrtric%2Fplt%2Fsme.git diff --git a/capifcore/internal/loggingapi/loggingapi-server.gen.go b/capifcore/internal/loggingapi/loggingapi-server.gen.go new file mode 100644 index 0000000..13948bb --- /dev/null +++ b/capifcore/internal/loggingapi/loggingapi-server.gen.go @@ -0,0 +1,183 @@ +// Package loggingapi provides primitives to interact with the openapi HTTP API. +// +// Code generated by github.com/deepmap/oapi-codegen version v1.10.1 DO NOT EDIT. +package loggingapi + +import ( + "bytes" + "compress/gzip" + "encoding/base64" + "fmt" + "net/http" + "net/url" + "path" + "strings" + + "github.com/deepmap/oapi-codegen/pkg/runtime" + "github.com/getkin/kin-openapi/openapi3" + "github.com/labstack/echo/v4" +) + +// ServerInterface represents all server handlers. +type ServerInterface interface { + + // (POST /{aefId}/logs) + PostAefIdLogs(ctx echo.Context, aefId string) error +} + +// ServerInterfaceWrapper converts echo contexts to parameters. +type ServerInterfaceWrapper struct { + Handler ServerInterface +} + +// PostAefIdLogs converts echo context to params. +func (w *ServerInterfaceWrapper) PostAefIdLogs(ctx echo.Context) error { + var err error + // ------------- Path parameter "aefId" ------------- + var aefId string + + err = runtime.BindStyledParameterWithLocation("simple", false, "aefId", runtime.ParamLocationPath, ctx.Param("aefId"), &aefId) + if err != nil { + return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter aefId: %s", err)) + } + + // Invoke the callback with all the unmarshalled arguments + err = w.Handler.PostAefIdLogs(ctx, aefId) + return err +} + +// This is a simple interface which specifies echo.Route addition functions which +// are present on both echo.Echo and echo.Group, since we want to allow using +// either of them for path registration +type EchoRouter interface { + CONNECT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + DELETE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + GET(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + HEAD(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + OPTIONS(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + PATCH(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + POST(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + PUT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route + TRACE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route +} + +// RegisterHandlers adds each server route to the EchoRouter. +func RegisterHandlers(router EchoRouter, si ServerInterface) { + RegisterHandlersWithBaseURL(router, si, "") +} + +// Registers handlers, and prepends BaseURL to the paths, so that the paths +// can be served under a prefix. +func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string) { + + wrapper := ServerInterfaceWrapper{ + Handler: si, + } + + router.POST(baseURL+"/:aefId/logs", wrapper.PostAefIdLogs) + +} + +// Base64 encoded, gzipped, json marshaled Swagger object +var swaggerSpec = []string{ + + "H4sIAAAAAAAC/8xY3ZLayhF+lS4lFydVsoTEEme5w6xJqNocUws+N8cuahi1YI6lGWVmBCZbPFBeI0+W", + "6hnxD7vHxknlZlmknv79+usengOuykpJlNYE3efA8AWWzP37UGtmhZJ/d98yNFyLih4E3eCjNGIuMQMh", + "Lc5Rg8hQWpGvhZwDgwq1UBmoHKwoEYSEWgpr6EEpikIY5EpmJgrCoBRSlHUZdFthYNcVBt2g0RlswmAo", + "l4o7Lx7V/NyNJ6w0GvIdGBi0ZGCMeik4Qm80BLE7DoWaG7AKZgjGKu1cBwb93mg4AK40Ql5LTqLkVaVV", + "hdoKdLEzzIfZufWhi9muQchc6dLboZgX3jp+rZShhGw1g8Z/1GgsPSvUfE6fKgdz0WMT7BJirBZyTvlg", + "laCUfEH9okMHTggvDquF4IvmW+beHpi9ZIoSdm7ienaDMBAWS3fmjxrzoBv8Id6DK26QFVMhN67uQy+e", + "7IwzrdmaXpq6qpS2mA2Q2VrjodLJOL3vvE2mfVWWSj4wy6I1K4uLtsZnejabMKAqCI1Z0P21Ke1JYpvg", + "P+8cU7PfkFvy7FUYShAyE0uR1ay4UlnKFqC0en0BapW4VNmxK8tRlx0XOIuuwOVnVuK5Pnp6iBKPjhUz", + "W3UhCAvCuKZiBp4bTRuomLbbkx+fhmCsrjnllsQyzIVnBTD1jBesNgh30R0daP91NILJGNL7qNNKrrn7", + "C2rjXDz1uHnxotOXdGZo7FBa1DnjeAKjNE2njgCmo3pWCLOYNvCe9kbD66jaqXs48HATBvkqO7J00pwW", + "hORFnaFxEUiV4bagAjX8dJy/4fvJAJ4GfXibtu8palYUkCu9Yjqj8rtOF2hghnaFKM8anknf5r33gxC4", + "kpxZlMxiBithF8BVWTInZCrGMQSM5hEk92nUitLort39SyuEWn6RaiW70w/vBtRIIaStdtSKkqQd/bl1", + "Kd1CVrUdMc1KtKgvEMijMA4/TpDQ1EhG0GeS2JnJNSxZUSO8Aa83BFmXM9QhzJQqkMkQHFOA0uA7M/Km", + "d7OCQuXr15joYMAdHZ+I8hQpCSHldxDOA7Pojm/CgNqa2QbMt6Puw04d6a7t78yzl/yhia60soqr4sfE", + "Ndpqc8xsVK05vk5apkIucsFhe+QlDtBo6sKeKxwoDX+bTEawjcixHlfSMiGNf2Uss7UBTt3a2N4j5ZIx", + "o/n/iG9qLb4Tph+1OJ+EbvLsZ8YRHZ+U5gADu+yeT0uygF8tasmKB8UvgPRgJqRpCr8kb6MkaoEPwbHZ", + "gGC7UvoLcZ+fIT8rbRczVcuMJGhNqnURdIOFtVU3jlerVdSeV1Wk9DzObRWPK+QmZpovxBLj9H5qUAs0", + "sTca+97P1bl3ZJ+snmyR0Sf5739B2kqT0Dv0Qc+ZFP90EqyAEdNWojbwU+9p+C6E3mQ4DqHfH/dCeD8Z", + "D0OYjB/cx6RHf/p/ij7JXlGAFvOFNYRo1EvMok8OX8IWlFSPm0e/NRJepvvdeOpXuOV2dgZJlEatN6yo", + "FixKGi6SrBKU8qgVEXNXzC5cReJntwNt4u3CVylzoVf6GplF2rMlrvYbjEvQlQWWZvyOBGmrCUbK2B5Z", + "eyRb5MSewH69vM262fjSUk17J4lTQEEYSEcdu71uj3Crawyb+w2Fd9K4m89eGI19pzI3O4gIUFq/llWF", + "8GHFvxlP6XtVLw2Z4xvM5rjryCfPT5WSxm+AaSv5bxo/mRLqpRsI8eJSZJjBbH3lRmNqztGYvC6K9fZi", + "pfwycuVqtUCWNRPrcUuj52jbcvB2zWwQIHFVrIE7LGY77g+Bca78XmSVnw/btbTrdtcnpewmZpV4sw/v", + "DQE+XiZHDRA/F2o+zDbfBB3K612r9Y1kvKt6TGediuQGFYlX0b5BRduruLtBxZ1TkdwQSOIDSW4IJPGB", + "JJ0bVHScivT++1Wk96SicwMuOh4XnRuK2vFFzTBnzQr0XWq25z3WL3fMjxoZ/09DIXzZ/sFVfxfeZdMu", + "R982jyjTbhNoEuG3nNfYjPYApgWbFbsfFEjcV6cBgVuVTDeO8SsrqwIjrsrgdDQ0B69e699GnZNrfZqm", + "BJDPm/8EAAD//6taPk1VFAAA", +} + +// 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 +}