MCPcopy Create free account
hub / github.com/UiPath/uipathcli / execute

Method execute

commandline/command_builder.go:412–442  ·  view source on GitHub ↗
(ctx executor.ExecutionContext, outputFormat string, query string, outputWriter output.OutputWriter)

Source from the content-addressed store, hash-verified

410}
411
412func (b CommandBuilder) execute(ctx executor.ExecutionContext, outputFormat string, query string, outputWriter output.OutputWriter) error {
413 var wg sync.WaitGroup
414 wg.Add(3)
415 reader, writer := io.Pipe()
416 go func() {
417 defer wg.Done()
418 defer func() { _ = reader.Close() }()
419 _, _ = io.Copy(b.StdOut, reader)
420 }()
421 errorReader, errorWriter := io.Pipe()
422 go func() {
423 defer wg.Done()
424 defer func() { _ = errorReader.Close() }()
425 _, _ = io.Copy(b.StdErr, errorReader)
426 }()
427
428 var err error
429 go func() {
430 defer wg.Done()
431 defer func() { _ = writer.Close() }()
432 defer func() { _ = errorWriter.Close() }()
433 if outputWriter == nil {
434 outputWriter = b.outputWriter(writer, outputFormat, query)
435 }
436 logger := b.logger(ctx.Debug, errorWriter)
437 err = b.executeCommand(ctx, outputWriter, logger)
438 }()
439
440 wg.Wait()
441 return err
442}
443
444func (b CommandBuilder) createCategoryCommand(operation parser.Operation) *CommandDefinition {
445 flags := NewFlagBuilder().

Callers 2

executeWaitMethod · 0.95

Calls 6

outputWriterMethod · 0.95
loggerMethod · 0.95
executeCommandMethod · 0.95
AddMethod · 0.80
CloseMethod · 0.80
WaitMethod · 0.65

Tested by

no test coverage detected