simplify transferr protocol
This commit is contained in:
parent
095cdc7e83
commit
0c46ee5ce0
4 changed files with 16 additions and 17 deletions
|
@ -116,7 +116,10 @@ metered' st othermeter msize showoutput a = go st
|
|||
a meter (combinemeter m)
|
||||
| otherwise = nometer
|
||||
go (MessageState { outputType = SerializedOutput h _ }) = do
|
||||
liftIO $ outputSerialized h $ BeginProgressMeter msize
|
||||
liftIO $ outputSerialized h BeginProgressMeter
|
||||
case msize of
|
||||
Just sz -> liftIO $ outputSerialized h $ UpdateProgressMeterTotalSize sz
|
||||
Nothing -> noop
|
||||
szv <- liftIO $ newIORef msize
|
||||
meter <- liftIO $ mkMeter msize $ \_ msize' _old new -> do
|
||||
case msize' of
|
||||
|
|
|
@ -63,11 +63,11 @@ relaySerializedOutput getso sendsor meterreport runannex = go Nothing
|
|||
outputSerialized h $ JSONObject b
|
||||
_ -> q
|
||||
loop st
|
||||
Left (BeginProgressMeter sz) -> do
|
||||
Left BeginProgressMeter -> do
|
||||
ost <- runannex (Annex.getState Annex.output)
|
||||
-- Display a progress meter while running, until
|
||||
-- the meter ends or a final value is returned.
|
||||
metered' ost Nothing sz (runannex showOutput)
|
||||
metered' ost Nothing Nothing (runannex showOutput)
|
||||
(\meter meterupdate -> loop (Just (meter, meterupdate)))
|
||||
>>= \case
|
||||
Right r -> return (Right r)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue