MCPcopy Create free account
hub / github.com/chainreactors/spray / OutputHandler

Method OutputHandler

core/runner.go:525–568  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

523}
524
525func (r *Runner) OutputHandler() {
526 go func() {
527 for {
528 select {
529 case bl, ok := <-r.OutputCh:
530 if !ok {
531 return
532 }
533 if r.DumpFile != nil {
534 r.DumpFile.SafeWrite(bl.ToJson() + "\n")
535 r.DumpFile.SafeSync()
536 }
537 if bl.IsValid {
538 r.Output(bl)
539 if bl.Recu {
540 r.AddRecursive(bl)
541 }
542 } else {
543 if r.Color {
544 logs.Log.Debug(bl.ColorString())
545 } else {
546 logs.Log.Debug(bl.String())
547 }
548 }
549 r.OutWg.Done()
550 }
551 }
552 }()
553
554 go func() {
555 for {
556 select {
557 case bl, ok := <-r.FuzzyCh:
558 if !ok {
559 return
560 }
561 if r.Fuzzy {
562 r.Output(bl)
563 }
564 r.OutWg.Done()
565 }
566 }
567 }()
568}

Calls 5

OutputMethod · 0.95
AddRecursiveMethod · 0.95
ColorStringMethod · 0.80
StringMethod · 0.45
DoneMethod · 0.45