private void doStart() {
   if (!started.get()) {
     try {
       dataRecorderDriver.start();
     } finally {
       try {
         strictExecutor.start();
       } finally {
         try {
           dsPacketExecutor.start();
         } finally {
           started.set(true);
         }
       }
     }
   }
 }
 private void doRestart() {
   if (started.get()) {
     // Kill any remaining commands ...
     scheduler.killAll();
   } else {
     try {
       dataRecorderDriver.start();
     } finally {
       try {
         strictExecutor.start();
       } finally {
         try {
           dsPacketExecutor.start();
         } finally {
           started.set(true);
         }
       }
     }
   }
 }