// Package providermanagementapi 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 providermanagementapi 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" externalRef0 "oransc.org/nonrtric/servicemanager/internal/common29122" externalRef1 "oransc.org/nonrtric/servicemanager/internal/common29571" ) // ServerInterface represents all server handlers. type ServerInterface interface { // (POST /registrations) PostRegistrations(ctx echo.Context) error // (DELETE /registrations/{registrationId}) DeleteRegistrationsRegistrationId(ctx echo.Context, registrationId string) error // (PATCH /registrations/{registrationId}) ModifyIndApiProviderEnrolment(ctx echo.Context, registrationId string) error // (PUT /registrations/{registrationId}) PutRegistrationsRegistrationId(ctx echo.Context, registrationId string) error } // ServerInterfaceWrapper converts echo contexts to parameters. type ServerInterfaceWrapper struct { Handler ServerInterface } // PostRegistrations converts echo context to params. func (w *ServerInterfaceWrapper) PostRegistrations(ctx echo.Context) error { var err error // Invoke the callback with all the unmarshalled arguments err = w.Handler.PostRegistrations(ctx) return err } // DeleteRegistrationsRegistrationId converts echo context to params. func (w *ServerInterfaceWrapper) DeleteRegistrationsRegistrationId(ctx echo.Context) error { var err error // ------------- Path parameter "registrationId" ------------- var registrationId string err = runtime.BindStyledParameterWithLocation("simple", false, "registrationId", runtime.ParamLocationPath, ctx.Param("registrationId"), ®istrationId) if err != nil { return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter registrationId: %s", err)) } // Invoke the callback with all the unmarshalled arguments err = w.Handler.DeleteRegistrationsRegistrationId(ctx, registrationId) return err } // ModifyIndApiProviderEnrolment converts echo context to params. func (w *ServerInterfaceWrapper) ModifyIndApiProviderEnrolment(ctx echo.Context) error { var err error // ------------- Path parameter "registrationId" ------------- var registrationId string err = runtime.BindStyledParameterWithLocation("simple", false, "registrationId", runtime.ParamLocationPath, ctx.Param("registrationId"), ®istrationId) if err != nil { return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter registrationId: %s", err)) } // Invoke the callback with all the unmarshalled arguments err = w.Handler.ModifyIndApiProviderEnrolment(ctx, registrationId) return err } // PutRegistrationsRegistrationId converts echo context to params. func (w *ServerInterfaceWrapper) PutRegistrationsRegistrationId(ctx echo.Context) error { var err error // ------------- Path parameter "registrationId" ------------- var registrationId string err = runtime.BindStyledParameterWithLocation("simple", false, "registrationId", runtime.ParamLocationPath, ctx.Param("registrationId"), ®istrationId) if err != nil { return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter registrationId: %s", err)) } // Invoke the callback with all the unmarshalled arguments err = w.Handler.PutRegistrationsRegistrationId(ctx, registrationId) 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+"/registrations", wrapper.PostRegistrations) router.DELETE(baseURL+"/registrations/:registrationId", wrapper.DeleteRegistrationsRegistrationId) router.PATCH(baseURL+"/registrations/:registrationId", wrapper.ModifyIndApiProviderEnrolment) router.PUT(baseURL+"/registrations/:registrationId", wrapper.PutRegistrationsRegistrationId) } // 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 } pathPrefix := path.Dir(pathToFile) for rawPath, rawFunc := range externalRef0.PathToRawSpec(path.Join(pathPrefix, "TS29122_CommonData.yaml")) { if _, ok := res[rawPath]; ok { // it is not possible to compare functions in golang, so always overwrite the old value } res[rawPath] = rawFunc } for rawPath, rawFunc := range externalRef1.PathToRawSpec(path.Join(pathPrefix, "TS29571_CommonData.yaml")) { if _, ok := res[rawPath]; ok { // it is not possible to compare functions in golang, so always overwrite the old value } res[rawPath] = rawFunc } 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 }