Safe Haskell | None |
---|
Hbro.Socket
Description
Designed to be imported as qualified
.
- open :: (MonadBaseControl IO m, MonadIO m, MonadReader r m, HasConfig r, HasOptions r, HasGUI r, HasZMQContext r, HasHooks r, MonadError HError m) => m ()
- close :: (Functor m, MonadIO m, MonadReader r m, HasConfig r, HasZMQContext r) => m ()
- readCommands :: (Functor m, MonadIO m, MonadBaseControl IO m, MonadReader r m, HasConfig r, HasOptions r, HasGUI r, HasZMQContext r, HasHooks r, MonadError HError m) => Socket Rep -> m ()
- postGUISync' :: MonadBaseControl IO m => m a -> m a
- getPath :: (Functor m, MonadIO m, MonadReader r m, HasConfig r) => m String
- socketPath :: ProcessID -> FilePath -> String
- send :: MonadIO m => Socket a -> String -> m ()
- read :: MonadIO m => Socket a -> m String
- sendCommand :: (MonadIO m, MonadReader r m, HasZMQContext r) => String -> String -> m String
- sendCommandToAll :: (MonadIO m, MonadReader r m, HasConfig r, HasZMQContext r) => String -> m [String]
Documentation
open :: (MonadBaseControl IO m, MonadIO m, MonadReader r m, HasConfig r, HasOptions r, HasGUI r, HasZMQContext r, HasHooks r, MonadError HError m) => m ()Source
Open a response-socket at configured location, named hbro.pid, and start listening for commands.
close :: (Functor m, MonadIO m, MonadReader r m, HasConfig r, HasZMQContext r) => m ()Source
Close the response socket by sending it the command QUIT. Typically called when exiting application.
readCommands :: (Functor m, MonadIO m, MonadBaseControl IO m, MonadReader r m, HasConfig r, HasOptions r, HasGUI r, HasZMQContext r, HasHooks r, MonadError HError m) => Socket Rep -> m ()Source
Listen for incoming requests from response socket. Parse received commands and feed the corresponding callback, if any.
postGUISync' :: MonadBaseControl IO m => m a -> m aSource
getPath :: (Functor m, MonadIO m, MonadReader r m, HasConfig r) => m StringSource
Return socket URI used for the current process.
socketPath :: ProcessID -> FilePath -> StringSource
Return the socket path to use for the given browser's process ID.
sendCommand :: (MonadIO m, MonadReader r m, HasZMQContext r) => String -> String -> m StringSource
Send a single command (through a Request socket) to the given Response socket, and return the answer.
sendCommandToAll :: (MonadIO m, MonadReader r m, HasConfig r, HasZMQContext r) => String -> m [String]Source
Same as sendCommand
, but for all running instances of the browser.