git.iko.soy/distributed-process
on master help sign in
Added a close routine for Pipes that removes the named pipe from disk
commitaf7778cb6a3ffa1069c99e453e4e89f044a0c3d2 authorRyan Newton <rrnewton@gmail.com> dateTue 21 Feb 2012, 00:06 (15 years ago) parent30fc293
1 file changed+4−4
network-transport/src/Network/Transport/Pipes.hs+4−4
network-transport/src/Network/Transport/Pipes.hs+4−4
@@ -33,7 +33,7 @@ import System.IO (IOMode(ReadMode,AppendMode,WriteMode,ReadWriteMode),
3333 openFile, hClose, hPutStrLn, hPutStr, stderr, stdout, hFlush)
3434import System.Posix.Files (createNamedPipe, unionFileModes, ownerReadMode, ownerWriteMode)
3535import System.Posix.Types (Fd)
36−import System.Directory (doesFileExist)
36+import System.Directory (doesFileExist, removeFile)
3737
3838-- define DEBUG
3939-- define USE_UNIX_BYTESTRING
@@ -86,9 +86,7 @@ mkTransport = do
8686 mkTargetEnd filename lock)
8787 , newMulticastWith = error "Pipes.hs: newMulticastWith not implemented yet"
8888 , deserialize = \bs -> return$ mkSourceAddr (BS.unpack bs)
89− , closeTransport = do
90−-- removeFile filename
91− return ()
89+ , closeTransport = removeFile filename
9290 }
9391 where
9492 mkSourceAddr :: String -> SourceAddr
@@ -128,6 +126,7 @@ mkTransport = do
128126 error$ "Failed to write message in one go, length: "++ show (BS.length finalmsg)
129127 ----------------------------------------
130128 return ()
129+ , closeSourceEnd = error "Pipes.hs: closeSourceEnd not yet implemented"
131130 }
132131
133132 mkTargetEnd :: String -> MVar () -> TargetEnd
@@ -170,6 +169,7 @@ mkTransport = do
170169 Right size -> spinread (fromIntegral (size::Word32))
171170 putMVar lock ()
172171 return [payload]
172+ , closeTargetEnd = error "Pipes.hs: closeTargetEnd not yet implemented"
173173 }
174174
175175spinTillThere :: String -> IO ()