Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client performs HTTP-based tasks (e.g. upload, download) against a EOS management node (MGM) using the EOS XrdHTTP interface. In this module we wrap eos-related behaviour, e.g. headers or r/w retries
func (*Client) GETFile ¶
func (c *Client) GETFile(ctx context.Context, httptransport *http.Transport, remoteuser, uid, gid, urlpath string, stream io.WriteCloser) (io.ReadCloser, error)
GETFile does an entire GET to download a full file. Returns a stream to read the content from
type Options ¶
type Options struct { // HTTP URL of the EOS MGM. // Default is https://eos-example.org BaseURL string // Timeout in seconds for connecting to the service ConnectTimeout int // Timeout in seconds for sending a request to the service and getting a response // Does not include redirections RWTimeout int // Timeout in seconds for performing an operation. Includes every redirection, retry, etc OpTimeout int // Max idle conns per Transport MaxIdleConns int // Max conns per transport per destination host MaxConnsPerHost int // Max idle conns per transport per destination host MaxIdleConnsPerHost int // TTL for an idle conn per transport IdleConnTimeout int // If the URL is https, then we need to configure this client // with the usual TLS stuff // Defaults are /etc/grid-security/hostcert.pem and /etc/grid-security/hostkey.pem ClientCertFile string ClientKeyFile string // These will override the defaults, which are common system paths hardcoded // in the go x509 implementation (why did they do that?!?!?) // of course /etc/grid-security/certificates is NOT in those defaults! ClientCADirs string ClientCAFiles string }
Options to configure the Client.
Click to show internal directories.
Click to hide internal directories.