github.com/mook-as/cf-cli@v7.0.0-beta.28.0.20200120190804-b91c115fae48+incompatible/command/v7/shared/noaa_debug_printer.go (about) 1 package shared 2 3 import ( 4 "time" 5 ) 6 7 type RequestLoggerOutput interface { 8 Start() error 9 Stop() error 10 DisplayType(name string, requestDate time.Time) error 11 DisplayDump(dump string) error 12 } 13 14 type NOAADebugPrinter struct { 15 outputs []RequestLoggerOutput 16 } 17 18 func (p *NOAADebugPrinter) addOutput(output RequestLoggerOutput) { 19 p.outputs = append(p.outputs, output) 20 } 21 22 func (p NOAADebugPrinter) Print(title string, dump string) { 23 for _, output := range p.outputs { 24 _ = output.Start() 25 defer output.Stop() 26 27 output.DisplayType(title, time.Now()) 28 output.DisplayDump(dump) 29 } 30 }