protected final void started ( ) { if ( ! state . compareAndSet ( State . STARTING , State . ALIVE ) ) { LOG . info ( "Program already started {} {}" , programName , runId ) ; return ; } LOG . info ( "Program started: {} {}" , programName , runId ) ; executor ( State . ALIVE ) . execute ( new Runnable ( ) { @ Override public void run ( ) { state . set ( State . ALIVE ) ; caller . alive ( ) ; } } ) ; }
Children call this method to signal the program is started .