diff options
author | Joey Hess <joey@kitenet.net> | 2013-03-19 18:46:29 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-03-19 18:46:29 -0400 |
commit | 4887b1b3afd8acf58602d622499664ffb777a8b1 (patch) | |
tree | 16cd101c9a61320f5fbf1ca72f1a51f602f70824 /Command | |
parent | 28336756f9e97173ce922d02c6eeed4e01d07e57 (diff) |
maintain pools of running transferkeys processes (untested)
Diffstat (limited to 'Command')
-rw-r--r-- | Command/TransferKeys.hs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Command/TransferKeys.hs b/Command/TransferKeys.hs index 61f99555d..93415d5f3 100644 --- a/Command/TransferKeys.hs +++ b/Command/TransferKeys.hs @@ -86,16 +86,19 @@ runRequests readh writeh a = go =<< readrequests hPutStrLn writeh $ serialize b hFlush writeh -sendRequest :: TransferRequest -> Handle -> IO () -sendRequest (TransferRequest d r k f) h = do +sendRequest :: Transfer -> AssociatedFile -> Handle -> IO () +sendRequest t f h = do hPutStr h $ join fieldSep - [ serialize d - , serialize $ Remote.uuid r - , serialize k + [ serialize (transferDirection t) + , serialize (transferUUID t) + , serialize (transferKey t) , serialize f ] hFlush h +readResponse :: Handle -> IO Bool +readResponse h = fromMaybe False . deserialize <$> hGetLine h + fieldSep :: String fieldSep = "\0" |