Revision 525bfb36 htools/Ganeti/HTools/Luxi.hs
b/htools/Ganeti/HTools/Luxi.hs | ||
---|---|---|
187 | 187 |
|
188 | 188 |
-- * Main loader functionality |
189 | 189 |
|
190 |
-- | Builds the cluster data from an URL.
|
|
190 |
-- | Builds the cluster data by querying a given socket name.
|
|
191 | 191 |
readData :: String -- ^ Unix socket to use as source |
192 | 192 |
-> IO (Result JSValue, Result JSValue, Result JSValue, Result JSValue) |
193 | 193 |
readData master = |
... | ... | |
202 | 202 |
return (groups, nodes, instances, cinfo) |
203 | 203 |
) |
204 | 204 |
|
205 |
-- | Converts the output of 'readData' into the internal cluster |
|
206 |
-- representation. |
|
205 | 207 |
parseData :: (Result JSValue, Result JSValue, Result JSValue, Result JSValue) |
206 | 208 |
-> Result ClusterData |
207 | 209 |
parseData (groups, nodes, instances, cinfo) = do |
... | ... | |
214 | 216 |
ctags <- cinfo >>= getClusterTags |
215 | 217 |
return (ClusterData group_idx node_idx inst_idx ctags) |
216 | 218 |
|
217 |
-- | Top level function for data loading |
|
219 |
-- | Top level function for data loading.
|
|
218 | 220 |
loadData :: String -- ^ Unix socket to use as source |
219 | 221 |
-> IO (Result ClusterData) |
220 | 222 |
loadData = fmap parseData . readData |
Also available in: Unified diff