MCPcopy Index your code
hub / github.com/cloudfoundry/cli / Read

Method Read

cf/net/progress_reader.go:32–58  ·  view source on GitHub ↗
(p []byte)

Source from the content-addressed store, hash-verified

30}
31
32func (progressReader *ProgressReader) Read(p []byte) (int, error) {
33 if progressReader.ioReadSeeker == nil {
34 return 0, os.ErrInvalid
35 }
36
37 n, err := progressReader.ioReadSeeker.Read(p)
38
39 if progressReader.total > int64(0) {
40 if n > 0 {
41 if progressReader.quit == nil {
42 progressReader.quit = make(chan bool)
43 go progressReader.printProgress(progressReader.quit)
44 }
45
46 progressReader.mutex.Lock()
47 progressReader.bytesRead += int64(n)
48 progressReader.mutex.Unlock()
49
50 if progressReader.total == progressReader.bytesRead {
51 progressReader.quit <- true
52 return n, err
53 }
54 }
55 }
56
57 return n, err
58}
59
60func (progressReader *ProgressReader) Seek(offset int64, whence int) (int64, error) {
61 return progressReader.ioReadSeeker.Seek(offset, whence)

Callers

nothing calls this directly

Calls 2

printProgressMethod · 0.95
ReadMethod · 0.65

Tested by

no test coverage detected