mirror of
https://github.com/postmannen/ctrl.git
synced 2024-12-14 12:37:31 +00:00
51 lines
1.5 KiB
Go
51 lines
1.5 KiB
Go
package steward
|
|
|
|
// ---- Template that can be used for creating request methods
|
|
|
|
// func (m methodREQCopyFileTo) handler(proc process, message Message, node string) ([]byte, error) {
|
|
//
|
|
// proc.processes.wg.Add(1)
|
|
// go func() {
|
|
// defer proc.processes.wg.Done()
|
|
//
|
|
// ctx, cancel := context.WithTimeout(proc.ctx, time.Second*time.Duration(message.MethodTimeout))
|
|
// defer cancel()
|
|
//
|
|
// // Put data that should be the result of the action done in the inner
|
|
// // go routine on the outCh.
|
|
// outCh := make(chan []byte)
|
|
// // Put errors from the inner go routine on the errCh.
|
|
// errCh := make(chan error)
|
|
//
|
|
// proc.processes.wg.Add(1)
|
|
// go func() {
|
|
// defer proc.processes.wg.Done()
|
|
//
|
|
// // Do some work here....
|
|
//
|
|
// }()
|
|
//
|
|
// // Wait for messages received from the inner go routine.
|
|
// select {
|
|
// case <-ctx.Done():
|
|
// fmt.Printf(" ** DEBUG: got ctx.Done\n")
|
|
//
|
|
// er := fmt.Errorf("error: methodREQ...: got <-ctx.Done(): %v", message.MethodArgs)
|
|
// sendErrorLogMessage(proc.configuration, proc.processes.metrics, proc.toRingbufferCh, proc.node, er)
|
|
// return
|
|
//
|
|
// case er := <-errCh:
|
|
// sendErrorLogMessage(proc.configuration, proc.processes.metrics, proc.toRingbufferCh, proc.node, er)
|
|
// return
|
|
//
|
|
// case out := <-outCh:
|
|
// replyData := fmt.Sprintf("info: succesfully created and wrote the file %v\n", out)
|
|
// newReplyMessage(proc, message, []byte(replyData))
|
|
// return
|
|
// }
|
|
//
|
|
// }()
|
|
//
|
|
// ackMsg := []byte("confirmed from: " + node + ": " + fmt.Sprint(message.ID))
|
|
// return ackMsg, nil
|
|
// }
|