Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Aggregator ¶
type Aggregator struct {
// contains filtered or unexported fields
}
func NewAggregator ¶
func NewAggregator(s Sinker) *Aggregator
func (*Aggregator) Done ¶
func (a *Aggregator) Done()
Done marks the aggregator as done. No more calls to Sink() may be made and the downstream progress report channel will be closed when Done() returns.
func (*Aggregator) Sink ¶
func (a *Aggregator) Sink() chan<- Report
type ProgressLogger ¶ added in v0.39.0
type ProgressLogger struct {
// contains filtered or unexported fields
}
func NewProgressLogger ¶ added in v0.39.0
func NewProgressLogger(log LogFunc, prefix string) *ProgressLogger
func (*ProgressLogger) Sink ¶ added in v0.39.0
func (p *ProgressLogger) Sink() chan<- Report
func (*ProgressLogger) Wait ¶ added in v0.39.0
func (p *ProgressLogger) Wait()
type Report ¶
Report defines the interface for types that can deliver progress reports. Examples include uploads/downloads in the http client and the task info field in the task managed object.
type SinkFunc ¶
type SinkFunc func() chan<- Report
SinkFunc defines a function that returns a progress report channel.
type Sinker ¶
type Sinker interface {
Sink() chan<- Report
}
Sinker defines what is expected of a type that can act as a sink for progress reports. The semantics are as follows. If you call Sink(), you are responsible for closing the returned channel. Closing this channel means that the related task is done, or resulted in error.