676 |
676 |
677 |
677 |
678 processAction CheckRecord = do |
678 processAction CheckRecord = do |
679 p <- client's clientProto |
679 p <- client's clientProto |
680 c <- client's sendChan |
680 c <- client's sendChan |
681 l <- io $ loadReplay (fromIntegral p) |
681 (cinfo, l) <- io $ loadReplay (fromIntegral p) |
682 when (not $ null l) $ |
682 when (not . null $ l) $ |
683 processAction $ AnswerClients [c] ("REPLAY" : l) |
683 mapM_ processAction [ |
684 |
684 AnswerClients [c] ("REPLAY" : l) |
685 |
685 , ModifyClient $ \c -> c{checkInfo = cinfo} |
686 processAction CheckRecord = do |
686 ] |
687 p <- client's clientProto |
687 |
688 c <- client's sendChan |
688 processAction (CheckFailed msg) = do |
689 l <- io $ loadReplay (fromIntegral p) |
689 Just (CheckInfo fileName _) <- client's checkInfo |
690 when (not $ null l) $ |
690 io $ moveFailedRecord fileName |
691 processAction $ AnswerClients [c] ("REPLAY" : l) |
691 |
692 |
692 processAction (CheckSuccess info) = do |
693 processAction (CheckFailed msg) = return () |
693 Just (CheckInfo fileName _) <- client's checkInfo |
694 |
694 io $ moveCheckedRecord fileName |
695 processAction (CheckSuccess info) = return () |
|
696 |
695 |
697 #else |
696 #else |
698 processAction SaveReplay = return () |
697 processAction SaveReplay = return () |
699 processAction CheckRecord = return () |
698 processAction CheckRecord = return () |
700 processAction (CheckFailed _) = return () |
699 processAction (CheckFailed _) = return () |