wrapper

package
v0.0.2-complete-api Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2020 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type RequestLogger

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

RequestLogger is the wrapper that logs requests to and responses from the UAA server

func NewRequestLogger

func NewRequestLogger(output RequestLoggerOutput) *RequestLogger

NewRequestLogger returns a pointer to a RequestLogger wrapper

func (*RequestLogger) Make

func (logger *RequestLogger) Make(request *http.Request, passedResponse *uaa.Response) error

Make records the request and the response to UI

func (*RequestLogger) Wrap

func (logger *RequestLogger) Wrap(innerconnection uaa.Connection) uaa.Connection

Wrap sets the connection on the RequestLogger and returns itself

type RequestLoggerOutput

type RequestLoggerOutput interface {
	DisplayBody(body []byte) error
	DisplayJSONBody(body []byte) error
	DisplayHeader(name string, value string) error
	DisplayHost(name string) error
	DisplayRequestHeader(method string, uri string, httpProtocol string) error
	DisplayResponseHeader(httpProtocol string, status string) error
	DisplayType(name string, requestDate time.Time) error
	HandleInternalError(err error)
	Start() error
	Stop() error
}

RequestLoggerOutput is the interface for displaying logs

type RetryRequest

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

RetryRequest is a wrapper that retries failed requests if they contain a 5XX status code.

func NewRetryRequest

func NewRetryRequest(maxRetries int) *RetryRequest

NewRetryRequest returns a pointer to a RetryRequest wrapper.

func (*RetryRequest) Make

func (retry *RetryRequest) Make(request *http.Request, passedResponse *uaa.Response) error

Make retries the request if it comes back with a 5XX status code.

func (*RetryRequest) Wrap

func (retry *RetryRequest) Wrap(innerconnection uaa.Connection) uaa.Connection

Wrap sets the connection in the RetryRequest and returns itself.

type TokenCache

type TokenCache interface {
	AccessToken() string
	RefreshToken() string
	SetAccessToken(token string)
	SetRefreshToken(token string)
}

TokenCache is where the UAA token information is stored.

type UAAAuthentication

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

UAAAuthentication wraps connections and adds authentication headers to all requests

func NewUAAAuthentication

func NewUAAAuthentication(client UAAClient, cache TokenCache) *UAAAuthentication

NewUAAAuthentication returns a pointer to a UAAAuthentication wrapper with the client and token cache.

func (*UAAAuthentication) Make

func (t *UAAAuthentication) Make(request *http.Request, passedResponse *uaa.Response) error

Make adds authentication headers to the passed in request and then calls the wrapped connection's Make

func (*UAAAuthentication) SetClient

func (t *UAAAuthentication) SetClient(client UAAClient)

SetClient sets the UAA client that the wrapper will use.

func (*UAAAuthentication) Wrap

func (t *UAAAuthentication) Wrap(innerconnection uaa.Connection) uaa.Connection

Wrap sets the connection on the UAAAuthentication and returns itself

type UAAClient

type UAAClient interface {
	RefreshAccessToken(refreshToken string) (uaa.RefreshedTokens, error)
}

UAAClient is the interface for getting a valid access token

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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