Documentation
¶
Index ¶
- Variables
- func MakeClient(envUI env_ui.Env, transport http.RoundTripper, localRepo repo.LocalRepo, ...) *client
- func ReadErrorFromBody(response *http.Response) (err error)
- func ReadErrorFromBodyOnGreaterOrEqual(response *http.Response, status int) (err error)
- func ReadErrorFromBodyOnNot(response *http.Response, statuses ...int) (err error)
- type BufferedResponseWriter
- func (responseWriter *BufferedResponseWriter) GetResponseWriter() http.ResponseWriter
- func (responseWriter *BufferedResponseWriter) Header() http.Header
- func (responseWriter *BufferedResponseWriter) Reset()
- func (responseWriter *BufferedResponseWriter) Write(p []byte) (int, error)
- func (responseWriter *BufferedResponseWriter) WriteHeader(statusCode int)
- func (responseWriter *BufferedResponseWriter) WriteResponse(writer io.Writer) error
- type HTTPPort
- type MethodPath
- type Request
- type Response
- type RoundTripperBufioWrappedSigner
- type RoundTripperHost
- type RoundTripperRetry
- type RoundTripperStdio
- type RoundTripperUnixSocket
- type Server
- func (server *Server) InitializeHTTP(config net.ListenConfig, port int) (httpPort HTTPPort, err error)
- func (server *Server) InitializeListener(network, address string) (listener net.Listener, err error)
- func (server *Server) InitializeUnixSocket(config net.ListenConfig, path string) (sock repo.UnixSocket, err error)
- func (server *Server) Serve(listener net.Listener) (err error)
- func (server *Server) ServeStdio()
- type UrlData
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultRoundTripper http.RoundTripper
Functions ¶
func MakeClient ¶
func MakeClient( envUI env_ui.Env, transport http.RoundTripper, localRepo repo.LocalRepo, typedBlobStore typed_blob_store.InventoryList, ) *client
func ReadErrorFromBody ¶
Types ¶
type BufferedResponseWriter ¶
func (*BufferedResponseWriter) GetResponseWriter ¶
func (responseWriter *BufferedResponseWriter) GetResponseWriter() http.ResponseWriter
func (*BufferedResponseWriter) Header ¶
func (responseWriter *BufferedResponseWriter) Header() http.Header
func (*BufferedResponseWriter) Reset ¶
func (responseWriter *BufferedResponseWriter) Reset()
func (*BufferedResponseWriter) Write ¶
func (responseWriter *BufferedResponseWriter) Write(p []byte) (int, error)
func (*BufferedResponseWriter) WriteHeader ¶
func (responseWriter *BufferedResponseWriter) WriteHeader(statusCode int)
func (*BufferedResponseWriter) WriteResponse ¶
func (responseWriter *BufferedResponseWriter) WriteResponse( writer io.Writer, ) error
type MethodPath ¶
type Request ¶
type Request struct {
MethodPath
Headers http.Header
Body io.ReadCloser
// contains filtered or unexported fields
}
type Response ¶
type Response struct {
StatusCode int
Body io.ReadCloser
}
func (*Response) ErrorWithStatus ¶
type RoundTripperBufioWrappedSigner ¶
type RoundTripperBufioWrappedSigner struct {
repo_signing.PublicKey
// contains filtered or unexported fields
}
type RoundTripperHost ¶
type RoundTripperHost struct {
UrlData
http.RoundTripper
}
A round tripper that decorates another round tripper and always populates the http requests with given UrlData template.
type RoundTripperRetry ¶
type RoundTripperRetry struct {
RetryFunc func(error) bool
RetryCount int
http.RoundTripper
}
func MakeRoundTripperRetry ¶
func MakeRoundTripperRetry( inner http.RoundTripper, count int, retryFunc func(error) bool, ) RoundTripperRetry
func MakeRoundTripperRetryTimeouts ¶
func MakeRoundTripperRetryTimeouts( inner http.RoundTripper, count int, ) RoundTripperRetry
type RoundTripperStdio ¶
type RoundTripperStdio struct {
exec.Cmd
io.WriteCloser
io.ReadCloser
RoundTripperBufioWrappedSigner
}
func (*RoundTripperStdio) InitializeWithLocal ¶
func (roundTripper *RoundTripperStdio) InitializeWithLocal( envRepo env_repo.Env, pubkey repo_signing.PublicKey, ) (err error)
func (*RoundTripperStdio) InitializeWithSSH ¶
func (roundTripper *RoundTripperStdio) InitializeWithSSH( envUI env_ui.Env, arg string, ) (err error)
type RoundTripperUnixSocket ¶
type RoundTripperUnixSocket struct {
repo.UnixSocket
net.Conn
RoundTripperBufioWrappedSigner
}
func (*RoundTripperUnixSocket) Initialize ¶
func (roundTripper *RoundTripperUnixSocket) Initialize( remote *Server, pubkey repo_signing.PublicKey, ) (err error)
TODO add public key
type Server ¶
type Server struct {
EnvLocal env_local.Env
Repo repo.LocalRepo
GetCertificate func(*tls.ClientHelloInfo) (*tls.Certificate, error)
// contains filtered or unexported fields
}
func (*Server) InitializeHTTP ¶
func (*Server) InitializeListener ¶
func (server *Server) InitializeListener( network, address string, ) (listener net.Listener, err error)
TODO switch to not return error
func (*Server) InitializeUnixSocket ¶
func (server *Server) InitializeUnixSocket( config net.ListenConfig, path string, ) (sock repo.UnixSocket, err error)
func (*Server) ServeStdio ¶
func (server *Server) ServeStdio()
Source Files
¶
- buffered_response_writer.go
- client.go
- client_blob_store.go
- client_inventory_list_store.go
- request_response.go
- round_tripper_bufio.go
- round_tripper_host.go
- round_tripper_retry.go
- round_tripper_stdio.go
- round_tripper_unix_socket.go
- round_tripper_wrapped_signer.go
- server.go
- server_blob_cache.go
- server_repo.go
- server_working_copy.go
Click to show internal directories.
Click to hide internal directories.