X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Devices%2FmTaskTCP.icl;h=dfa7f2fbe3dfbad2b62504db46f528c0c9fa2fc4;hb=03f652f7afb24678d565d1b12f12b0fa27444dd2;hp=bf05e0549485d2899b800a3b0048f8a1ad70fdca;hpb=00fec1dc0792381759d7cfbfb55f17996a11f1a4;p=mTask.git diff --git a/Devices/mTaskTCP.icl b/Devices/mTaskTCP.icl index bf05e05..dfa7f2f 100644 --- a/Devices/mTaskTCP.icl +++ b/Devices/mTaskTCP.icl @@ -1,9 +1,12 @@ 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" [] @@ -21,8 +24,9 @@ instance MTaskDuplex TCPSettings where 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)