Revision 1a82215d Ganeti/HTools/Text.hs
b/Ganeti/HTools/Text.hs | ||
---|---|---|
49 | 49 |
|
50 | 50 |
-- | Load a node from a field list. |
51 | 51 |
loadNode :: (Monad m) => [String] -> m (String, Node.Node) |
52 |
loadNode (name:tm:nm:fm:td:fd:fo:[]) = do |
|
52 |
loadNode (name:tm:nm:fm:td:fd:tc:fo:[]) = do
|
|
53 | 53 |
new_node <- |
54 |
if any (== "?") [tm,nm,fm,td,fd] || fo == "Y" then |
|
55 |
return $ Node.create name 0 0 0 0 0 True |
|
54 |
if any (== "?") [tm,nm,fm,td,fd,tc] || fo == "Y" then
|
|
55 |
return $ Node.create name 0 0 0 0 0 0 True
|
|
56 | 56 |
else do |
57 | 57 |
vtm <- tryRead name tm |
58 | 58 |
vnm <- tryRead name nm |
59 | 59 |
vfm <- tryRead name fm |
60 | 60 |
vtd <- tryRead name td |
61 | 61 |
vfd <- tryRead name fd |
62 |
return $ Node.create name vtm vnm vfm vtd vfd False |
|
62 |
vtc <- tryRead name tc |
|
63 |
return $ Node.create name vtm vnm vfm vtd vfd vtc False |
|
63 | 64 |
return (name, new_node) |
64 | 65 |
loadNode s = fail $ "Invalid/incomplete node data: '" ++ (show s) ++ "'" |
65 | 66 |
|
Also available in: Unified diff