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
func NewPluginGetter ¶
func NewPluginGetter(command string, settings *cli.EnvSettings, name, base string) Constructor
NewPluginGetter constructs a valid plugin getter
type Getter ¶
type Getter interface { // Get file content by url string Get(url string, options ...Option) (*bytes.Buffer, 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 default 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 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.
type Providers ¶
type Providers []Provider
Providers is a collection of Provider objects.
func All ¶
func All(settings *cli.EnvSettings) Providers
All finds all of the registered getters as a list of Provider instances. Currently, the built-in getters and the discovered plugins with downloader notations are collected.