api

package
v0.0.0-...-1a9398a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 14, 2024 License: MIT Imports: 16 Imported by: 0

Documentation

Overview

Package api provides primitives to interact with the openapi HTTP API.

Code generated by github.com/deepmap/oapi-codegen version v1.12.4 DO NOT EDIT.

Index

Constants

View Source
const (
	StatusResponseOK          = "OK"
	StatusResponseError       = "Error"
	StatusResponseConflict    = "Conflict"
	StatusResponseServerError = "Server error"
)

Variables

This section is empty.

Functions

func GetSwagger

func GetSwagger() (swagger *openapi3.T, err error)

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 NewGetV1HealthReadyzRequest

func NewGetV1HealthReadyzRequest(server string) (*http.Request, error)

NewGetV1HealthReadyzRequest generates requests for GetV1HealthReadyz

func NewPostV1RepoSubscribeProviderGroupRepoRequest

func NewPostV1RepoSubscribeProviderGroupRepoRequest(server string, provider string, group string, repo string) (*http.Request, error)

NewPostV1RepoSubscribeProviderGroupRepoRequest generates requests for PostV1RepoSubscribeProviderGroupRepo

func PathToRawSpec

func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)

Constructs a synthetic filesystem for resolving external references when loading openapi specifications.

func RegisterHandlers

func RegisterHandlers(router EchoRouter, si ServerInterface)

RegisterHandlers adds each server route to the EchoRouter.

func RegisterHandlersWithBaseURL

func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string)

Registers handlers, and prepends BaseURL to the paths, so that the paths can be served under a prefix.

Types

type Client

type Client struct {
	// The endpoint of the server conforming to this interface, with scheme,
	// https://api.deepmap.com for example. This can contain a path relative
	// to the server, such as https://api.deepmap.com/dev-test, and all the
	// paths in the swagger spec will be appended to the server.
	Server string

	// Doer for performing requests, typically a *http.Client with any
	// customized settings, such as certificate chains.
	Client HttpRequestDoer

	// A list of callbacks for modifying requests which are generated before sending over
	// the network.
	RequestEditors []RequestEditorFn
}

Client which conforms to the OpenAPI3 specification for this service.

func NewClient

func NewClient(server string, opts ...ClientOption) (*Client, error)

Creates a new Client, with reasonable defaults

func (*Client) GetV1HealthReadyz

func (c *Client) GetV1HealthReadyz(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) PostV1RepoSubscribeProviderGroupRepo

func (c *Client) PostV1RepoSubscribeProviderGroupRepo(ctx context.Context, provider string, group string, repo string, reqEditors ...RequestEditorFn) (*http.Response, error)

type ClientInterface

type ClientInterface interface {
	// GetV1HealthReadyz request
	GetV1HealthReadyz(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)

	// PostV1RepoSubscribeProviderGroupRepo request
	PostV1RepoSubscribeProviderGroupRepo(ctx context.Context, provider string, group string, repo string, reqEditors ...RequestEditorFn) (*http.Response, error)
}

The interface specification for the client above.

type ClientOption

type ClientOption func(*Client) error

ClientOption allows setting custom parameters during construction

func WithBaseURL

func WithBaseURL(baseURL string) ClientOption

WithBaseURL overrides the baseURL.

func WithHTTPClient

func WithHTTPClient(doer HttpRequestDoer) ClientOption

WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.

func WithRequestEditorFn

func WithRequestEditorFn(fn RequestEditorFn) ClientOption

WithRequestEditorFn allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.

type ClientWithResponses

type ClientWithResponses struct {
	ClientInterface
}

ClientWithResponses builds on ClientInterface to offer response payloads

func NewClientWithResponses

func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error)

NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling

func (*ClientWithResponses) GetV1HealthReadyzWithResponse

func (c *ClientWithResponses) GetV1HealthReadyzWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetV1HealthReadyzResponse, error)

GetV1HealthReadyzWithResponse request returning *GetV1HealthReadyzResponse

func (*ClientWithResponses) PostV1RepoSubscribeProviderGroupRepoWithResponse

func (c *ClientWithResponses) PostV1RepoSubscribeProviderGroupRepoWithResponse(ctx context.Context, provider string, group string, repo string, reqEditors ...RequestEditorFn) (*PostV1RepoSubscribeProviderGroupRepoResponse, error)

PostV1RepoSubscribeProviderGroupRepoWithResponse request returning *PostV1RepoSubscribeProviderGroupRepoResponse

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {
	// GetV1HealthReadyz request
	GetV1HealthReadyzWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*GetV1HealthReadyzResponse, error)

	// PostV1RepoSubscribeProviderGroupRepo request
	PostV1RepoSubscribeProviderGroupRepoWithResponse(ctx context.Context, provider string, group string, repo string, reqEditors ...RequestEditorFn) (*PostV1RepoSubscribeProviderGroupRepoResponse, error)
}

ClientWithResponsesInterface is the interface specification for the client with responses above.

type EchoRouter

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
}

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 ErrorReponse

type ErrorReponse struct {
	// Message Error message
	Message string `json:"message"`

	// Status Status
	Status string `json:"status"`
}

ErrorReponse defines model for ErrorReponse.

type GetV1HealthReadyzResponse

type GetV1HealthReadyzResponse struct {
	Body         []byte
	HTTPResponse *http.Response
}

func ParseGetV1HealthReadyzResponse

func ParseGetV1HealthReadyzResponse(rsp *http.Response) (*GetV1HealthReadyzResponse, error)

ParseGetV1HealthReadyzResponse parses an HTTP response from a GetV1HealthReadyzWithResponse call

func (GetV1HealthReadyzResponse) Status

func (r GetV1HealthReadyzResponse) Status() string

Status returns HTTPResponse.Status

func (GetV1HealthReadyzResponse) StatusCode

func (r GetV1HealthReadyzResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type HttpRequestDoer

type HttpRequestDoer interface {
	Do(req *http.Request) (*http.Response, error)
}

Doer performs HTTP requests.

The standard http.Client implements this interface.

type PostV1RepoSubscribeProviderGroupRepoResponse

type PostV1RepoSubscribeProviderGroupRepoResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON201      *StatusOnlyReponse
	JSON400      *ErrorReponse
}

func ParsePostV1RepoSubscribeProviderGroupRepoResponse

func ParsePostV1RepoSubscribeProviderGroupRepoResponse(rsp *http.Response) (*PostV1RepoSubscribeProviderGroupRepoResponse, error)

ParsePostV1RepoSubscribeProviderGroupRepoResponse parses an HTTP response from a PostV1RepoSubscribeProviderGroupRepoWithResponse call

func (PostV1RepoSubscribeProviderGroupRepoResponse) Status

Status returns HTTPResponse.Status

func (PostV1RepoSubscribeProviderGroupRepoResponse) StatusCode

StatusCode returns HTTPResponse.StatusCode

type ReleaseTrackerAPI

type ReleaseTrackerAPI struct {
	// contains filtered or unexported fields
}

func NewReleaseTrackerAPI

func NewReleaseTrackerAPI(logger logr.Logger, databaseURL string) *ReleaseTrackerAPI

func (*ReleaseTrackerAPI) GetV1HealthReadyz

func (a *ReleaseTrackerAPI) GetV1HealthReadyz(c echo.Context) error

func (*ReleaseTrackerAPI) PostV1RepoSubscribeProviderGroupRepo

func (a *ReleaseTrackerAPI) PostV1RepoSubscribeProviderGroupRepo(c echo.Context, provider string, group string, repo string) error

type RequestEditorFn

type RequestEditorFn func(ctx context.Context, req *http.Request) error

RequestEditorFn is the function signature for the RequestEditor callback function

type ServerInterface

type ServerInterface interface {
	// Check if the API is ready
	// (GET /v1/health/readyz)
	GetV1HealthReadyz(ctx echo.Context) error
	// Subscribe to a repository
	// (POST /v1/repo/subscribe/{provider}/{group}/{repo})
	PostV1RepoSubscribeProviderGroupRepo(ctx echo.Context, provider string, group string, repo string) error
}

ServerInterface represents all server handlers.

type ServerInterfaceWrapper

type ServerInterfaceWrapper struct {
	Handler ServerInterface
}

ServerInterfaceWrapper converts echo contexts to parameters.

func (*ServerInterfaceWrapper) GetV1HealthReadyz

func (w *ServerInterfaceWrapper) GetV1HealthReadyz(ctx echo.Context) error

GetV1HealthReadyz converts echo context to params.

func (*ServerInterfaceWrapper) PostV1RepoSubscribeProviderGroupRepo

func (w *ServerInterfaceWrapper) PostV1RepoSubscribeProviderGroupRepo(ctx echo.Context) error

PostV1RepoSubscribeProviderGroupRepo converts echo context to params.

type StatusOnlyReponse

type StatusOnlyReponse struct {
	// Status Status
	Status string `json:"status"`
}

StatusOnlyReponse defines model for StatusOnlyReponse.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL