13f03c3f7a
Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
39 lines
799 B
Go
39 lines
799 B
Go
package supervisor
|
|
|
|
func (s *Supervisor) handleTask(i Task) {
|
|
var err error
|
|
switch t := i.(type) {
|
|
case *AddProcessTask:
|
|
err = s.addProcess(t)
|
|
case *CreateCheckpointTask:
|
|
err = s.createCheckpoint(t)
|
|
case *DeleteCheckpointTask:
|
|
err = s.deleteCheckpoint(t)
|
|
case *StartTask:
|
|
err = s.start(t)
|
|
case *DeleteTask:
|
|
err = s.delete(t)
|
|
case *ExitTask:
|
|
err = s.exit(t)
|
|
case *ExecExitTask:
|
|
err = s.execExit(t)
|
|
case *GetContainersTask:
|
|
err = s.getContainers(t)
|
|
case *SignalTask:
|
|
err = s.signal(t)
|
|
case *StatsTask:
|
|
err = s.stats(t)
|
|
case *UpdateTask:
|
|
err = s.updateContainer(t)
|
|
case *UpdateProcessTask:
|
|
err = s.updateProcess(t)
|
|
case *OOMTask:
|
|
err = s.oom(t)
|
|
default:
|
|
err = ErrUnknownTask
|
|
}
|
|
if err != errDeferredResponse {
|
|
i.ErrorCh() <- err
|
|
close(i.ErrorCh())
|
|
}
|
|
}
|