jamf

package
v0.0.0-...-347f27f Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultRetryMax = 6
)

Variables

This section is empty.

Functions

func RetryableErrorHandler

func RetryableErrorHandler(resp *http.Response, err error, numTries int) (*http.Response, error)

RetryableErrorHandler ensures that the response is returned after exhausting retries for a request

Types

type BaseClient

type BaseClient struct {
	// BaseURL is the base endpoint for Jamf Pro, e.g. https://yourdomain.jamfcloud.com
	BaseURL            *url.URL
	AuthorizationToken *string
	DisableRetries     bool
	DefaultContentType string

	// HttpClient is the underlying http.Client, which by default uses a retryable client
	HttpClient      *http.Client
	RetryableClient *retryablehttp.Client
}

func NewBaseClient

func NewBaseClient(baseURL *url.URL) *BaseClient

func (*BaseClient) Delete

func (c *BaseClient) Delete(ctx context.Context, input DeleteHttpRequestInput) (*Response, int, error)

Delete performs a DELETE request.

func (*BaseClient) Get

Get performs a GET request.

func (*BaseClient) Patch

func (c *BaseClient) Patch(ctx context.Context, input PatchHttpRequestInput) (*Response, int, error)

Patch performs a PATCH request.

func (*BaseClient) Post

func (c *BaseClient) Post(ctx context.Context, input PostHttpRequestInput) (*Response, int, error)

Post performs a POST request.

func (*BaseClient) Put

Put performs a PUT request.

type ConsistencyFailureFunc

type ConsistencyFailureFunc func(*http.Response) bool

ConsistencyFailureFunc is a function that determines whether an HTTP request has failed due to eventual consistency and should be retried.

type DeleteHttpRequestInput

type DeleteHttpRequestInput struct {
	ConsistencyFailureFunc ConsistencyFailureFunc
	RequestMiddlewareFunc  RequestMiddlewareFunc
	ContentType            string
	Uri                    Uri
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
}

func (DeleteHttpRequestInput) GetConsistencyFailureFunc

func (i DeleteHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (DeleteHttpRequestInput) GetContentType

func (i DeleteHttpRequestInput) GetContentType(defaultType string) string

GetContentType returns the content type for the request.

func (DeleteHttpRequestInput) GetRequestMiddlewareFunc

func (i DeleteHttpRequestInput) GetRequestMiddlewareFunc() RequestMiddlewareFunc

func (DeleteHttpRequestInput) GetValidStatusCodes

func (i DeleteHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a DELETE request.

func (DeleteHttpRequestInput) GetValidStatusFunc

func (i DeleteHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a DELETE request is considered valid.

type GetHttpRequestInput

type GetHttpRequestInput struct {
	ConsistencyFailureFunc ConsistencyFailureFunc
	ContentType            string
	RequestMiddlewareFunc  RequestMiddlewareFunc
	Uri                    Uri
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
}

GetHttpRequestInput configures a GET request.

func (GetHttpRequestInput) GetConsistencyFailureFunc

func (i GetHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (GetHttpRequestInput) GetContentType

func (i GetHttpRequestInput) GetContentType(defaultType string) string

GetContentType returns the content type for the request.

func (GetHttpRequestInput) GetRequestMiddlewareFunc

func (i GetHttpRequestInput) GetRequestMiddlewareFunc() RequestMiddlewareFunc

func (GetHttpRequestInput) GetValidStatusCodes

func (i GetHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a GET request.

func (GetHttpRequestInput) GetValidStatusFunc

func (i GetHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a GET request is considered valid.

type HttpRequestInput

type HttpRequestInput interface {
	GetRequestMiddlewareFunc() RequestMiddlewareFunc
	GetConsistencyFailureFunc() ConsistencyFailureFunc
	GetContentType(defaultType string) string
	GetValidStatusCodes() []int
	GetValidStatusFunc() ValidStatusFunc
}

HttpRequestInput is any type that can validate the response to an HTTP request.

type PatchHttpRequestInput

type PatchHttpRequestInput struct {
	Body                   *bytes.Buffer
	ConsistencyFailureFunc ConsistencyFailureFunc
	ContentType            string
	RequestMiddlewareFunc  RequestMiddlewareFunc
	Uri                    Uri
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
}

PatchHttpRequestInput configures a PATCH request.

func (PatchHttpRequestInput) GetConsistencyFailureFunc

func (i PatchHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (PatchHttpRequestInput) GetContentType

func (i PatchHttpRequestInput) GetContentType(defaultType string) string

GetContentType returns the content type for the request.

func (PatchHttpRequestInput) GetRequestMiddlewareFunc

func (i PatchHttpRequestInput) GetRequestMiddlewareFunc() RequestMiddlewareFunc

func (PatchHttpRequestInput) GetValidStatusCodes

func (i PatchHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a PATCH request.

func (PatchHttpRequestInput) GetValidStatusFunc

func (i PatchHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a PATCH request is considered valid.

type PostHttpRequestInput

type PostHttpRequestInput struct {
	Body                   *bytes.Buffer
	ContentType            string
	ConsistencyFailureFunc ConsistencyFailureFunc
	RequestMiddlewareFunc  RequestMiddlewareFunc
	Uri                    Uri
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
}

PostHttpRequestInput configures a POST request.

func (PostHttpRequestInput) GetConsistencyFailureFunc

func (i PostHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (PostHttpRequestInput) GetContentType

func (i PostHttpRequestInput) GetContentType(defaultType string) string

GetContentType returns the content type for the request.

func (PostHttpRequestInput) GetRequestMiddlewareFunc

func (i PostHttpRequestInput) GetRequestMiddlewareFunc() RequestMiddlewareFunc

func (PostHttpRequestInput) GetValidStatusCodes

func (i PostHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a POST request.

func (PostHttpRequestInput) GetValidStatusFunc

func (i PostHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a POST request is considered valid.

type PutHttpRequestInput

type PutHttpRequestInput struct {
	Body                   *bytes.Buffer
	ConsistencyFailureFunc ConsistencyFailureFunc
	ContentType            string
	RequestMiddlewareFunc  RequestMiddlewareFunc
	Uri                    Uri
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
}

PutHttpRequestInput configures a PUT request.

func (PutHttpRequestInput) GetConsistencyFailureFunc

func (i PutHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (PutHttpRequestInput) GetContentType

func (i PutHttpRequestInput) GetContentType(defaultType string) string

GetContentType returns the content type for the request.

func (PutHttpRequestInput) GetRequestMiddlewareFunc

func (i PutHttpRequestInput) GetRequestMiddlewareFunc() RequestMiddlewareFunc

func (PutHttpRequestInput) GetValidStatusCodes

func (i PutHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a PUT request.

func (PutHttpRequestInput) GetValidStatusFunc

func (i PutHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a PUT request is considered valid.

type RequestMiddlewareFunc

type RequestMiddlewareFunc func(r *http.Request)

RequestMiddlewareFunc is a function that modifies an HTTP request before it is sent.

type Response

type Response struct {
	*http.Response
}

type Uri

type Uri struct {
	Entity string
	Params url.Values
}

type ValidStatusFunc

type ValidStatusFunc func(*http.Response) bool

ValidStatusFunc is a function that tests whether an HTTP response is considered valid for the particular request.

Jump to

Keyboard shortcuts

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