implementation module Devices.mTaskTCP
+import GenPrint
+import StdDebug
import Devices.mTaskDevice
import iTasks
derive class iTask TCPSettings
+derive gPrint MTaskMSGRecv
getmTaskTCPDevice :: Task MTaskResource
getmTaskTCPDevice = TCPDevice <$> enterInformation "Settings" []
onConnect _ (msgs,send,sendStopped) = (Ok "", Just (msgs,[],sendStopped), map encode send, False)
whileConnected :: (Maybe String) String ([MTaskMSGRecv], [MTaskMSGSend],Bool) -> (MaybeErrorString String, Maybe ([MTaskMSGRecv],[MTaskMSGSend],Bool), [String], Bool)
- whileConnected Nothing acc (msgs,send,sendStopped) = (Ok acc, Nothing, [], False)
- whileConnected (Just newData) acc (msgs,send,sendStopped) = (Ok acc, Just (msgs ++ [decode newData],[],False), map encode send, False)
+ whileConnected Nothing _ (_,[],_) = (Ok "", Nothing, [], False)
+ whileConnected md _ (msgs,send,sendStopped)
+ = (Ok "", Just (msgs++map decode (maybeToList md),[],sendStopped), map encode send, False)
onDisconnect :: String ([MTaskMSGRecv],[MTaskMSGSend],Bool) -> (MaybeErrorString String, Maybe ([MTaskMSGRecv],[MTaskMSGSend],Bool))
- onDisconnect l (msgs,send,sendStopped) = (Ok l, Nothing)
+ onDisconnect _ (msgs,send,sendStopped) = (Ok "", Nothing)