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 is a client for uploading and downloading files from a windlass server.
type ClientOptions ¶
type ClientOptions struct { // NumConnections is the number of concurrent connections to use when uploading chunks. NumConnections int // ChunkSizeBytes is the size of each chunk. ChunkSizeBytes int64 // MaxRetryAttempts is the maximum number of retry attempts to make before giving up. MaxRetryAttempts int // TLSClientConfig is the optional TLS configuration to use when making requests. TLSClientConfig *tls.Config }
ClientOptions are options for configuring the behavior of the upload client.
type Server ¶
Server is a windlass server.
func NewServer ¶
func NewServer(logger *slog.Logger, fsys writablefs.FS, opts ...ServerOption) *Server
NewServer creates a new windlass server.
type ServerOption ¶ added in v0.7.0
type ServerOption func(*serverConfig)
ServerOption is an option for configuring a windlass server.
func WithStagingFS ¶ added in v0.7.2
func WithStagingFS(fsys writablefs.FS) ServerOption
WithStagingFS sets the staging filesystem to use for storing partial uploads. If not provided, the target filesystem will be used. This is useful for filesystems that only support immutable files, such as S3.
Click to show internal directories.
Click to hide internal directories.