Documentation ¶
Overview ¶
Package getter provides a generalize tool for fetching data by scheme.
This provides a method by which the plugin system can load arbitrary protocol handlers based upon a URL scheme.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Constructor ¶
Constructor is the function for every getter which creates a specific instance according to the configuration
type Getter ¶
type Getter interface { // Get file content by url string Get(url string, options ...Option) (*bytes.Reader, error) }
Getter is an interface to support GET to the specified URL.
func NewHTTPGetter ¶
NewHTTPGetter constructs a valid http/https client as a Getter
type HTTPGetter ¶
type HTTPGetter struct {
// contains filtered or unexported fields
}
HTTPGetter is the efault HTTP(/S) backend handler
type Option ¶
type Option func(*options)
Option allows specifying various settings configurable by the user for overriding the defaults used when performing Get operations with the Getter.
func WithBasicAuth ¶
WithBasicAuth sets the request's Authorization header to use the provided credentials
func WithTLSClientConfig ¶
WithTLSClientConfig sets the client client auth with the provided credentials.
func WithURL ¶
WithURL informs the getter the server name that will be used when fetching objects. Used in conjunction with WithTLSClientConfig to set the TLSClientConfig's server name.
func WithUserAgent ¶
WithUserAgent sets the request's User-Agent header to use the provided agent name.
type Provider ¶
type Provider struct { Schemes []string New Constructor }
Provider represents any getter and the schemes that it supports.
For example, an HTTP provider may provide one getter that handles both 'http' and 'https' schemes.