|
|
|
|
|
Description |
Implementation of the LUXI loader.
|
|
Synopsis |
|
toArray :: Monad m => JSValue -> m [JSValue] | | genericConvert :: JSON a => String -> String -> String -> JSValue -> Result a | | queryNodesMsg :: LuxiOp | | queryInstancesMsg :: LuxiOp | | queryClusterInfoMsg :: LuxiOp | | queryGroupsMsg :: LuxiOp | | queryNodes :: Client -> IO (Result JSValue) | | queryInstances :: Client -> IO (Result JSValue) | | queryClusterInfo :: Client -> IO (Result JSValue) | | queryGroups :: Client -> IO (Result JSValue) | | getInstances :: NameAssoc -> JSValue -> Result [(String, Instance)] | | parseInstance :: NameAssoc -> JSValue -> Result (String, Instance) | | getNodes :: NameAssoc -> JSValue -> Result [(String, Node)] | | parseNode :: NameAssoc -> JSValue -> Result (String, Node) | | getClusterTags :: JSValue -> Result [String] | | getGroups :: JSValue -> Result [(String, Group)] | | parseGroup :: JSValue -> Result (String, Group) | | readData :: String -> IO (Result JSValue, Result JSValue, Result JSValue, Result JSValue) | | parseData :: (Result JSValue, Result JSValue, Result JSValue, Result JSValue) -> Result ClusterData | | loadData :: String -> IO (Result ClusterData) |
|
|
|
Utility functions
|
|
toArray :: Monad m => JSValue -> m [JSValue] | Source |
|
Ensure a given JSValue is actually a JSArray.
|
|
|
:: JSON a | | => String | The object name
| -> String | The attribute we're trying to convert
| -> String | The value we try to convert
| -> JSValue | The annotated result
| -> Result a | | Annotate errors when converting values with owner/attribute for
better debugging.
|
|
|
Data querying functionality
|
|
|
The input data for node query.
|
|
|
The input data for instance query.
|
|
|
The input data for cluster query.
|
|
|
The input data for node group query.
|
|
|
Wraper over callMethod doing node query.
|
|
|
Wraper over callMethod doing instance query.
|
|
|
Wrapper over callMethod doing cluster information query.
|
|
|
Wrapper over callMethod doing group query.
|
|
|
Parse a instance list in JSON format.
|
|
|
Construct an instance from a JSON object.
|
|
|
Parse a node list in JSON format.
|
|
|
Construct a node from a JSON object.
|
|
|
Parses the cluster tags.
|
|
|
Parses the cluster groups.
|
|
|
Parses a given group information.
|
|
Main loader functionality
|
|
|
:: String | Unix socket to use as source
| -> IO (Result JSValue, Result JSValue, Result JSValue, Result JSValue) | | Builds the cluster data by querying a given socket name.
|
|
|
|
Converts the output of readData into the internal cluster
representation.
|
|
|
:: String | Unix socket to use as source
| -> IO (Result ClusterData) | | Top level function for data loading.
|
|
|
Produced by Haddock version 2.6.0 |