hen-0.1.0.1: Haskell bindings to Xen hypervisor interface

Safe HaskellNone

System.Xen.High

Description

High-level interface to XenCtrl. Contains Xen monad and provides a safe way to run any Xen computation.

Synopsis

Documentation

data XenT m a Source

Instances

MonadTrans XenT 
MonadRWS r w s m => MonadRWS r w s (XenT m) 
MonadReader r m => MonadReader r (XenT m) 
MonadState s m => MonadState s (XenT m) 
MonadWriter w m => MonadWriter w (XenT m) 
Monad m => Monad (XenT m) 
Functor m => Functor (XenT m) 
Applicative m => Applicative (XenT m) 
MonadCatch m => MonadCatch (XenT m) 
MonadIO m => MonadIO (XenT m) 
(Functor m, MonadIO m, MonadCatch m) => MonadXen (XenT m) 

domainGetInfo :: MonadXen m => m [DomainInfo]Source

Returns a lift of domains, this function can fail with InvalidDomainShutdownReason and DomainGetInfoError.

runXenT :: (Functor m, MonadIO m, MonadCatch m) => XenT m a -> m (Either SomeException a)Source

Open new connection to the hypervisor, run any Xen action and close connection if nessesary. This function can fail with Either SomeException with XcHandleOpenError and any error of providing Xen action.