Revision 76ae2e5b

b/htools/Ganeti/HTools/Loader.hs
124 124
-- | Lookups a node into an assoc list.
125 125
lookupNode :: (Monad m) => NameAssoc -> String -> String -> m Ndx
126 126
lookupNode ktn inst node =
127
  case M.lookup node ktn of
128
    Nothing -> fail $ "Unknown node '" ++ node ++ "' for instance " ++ inst
129
    Just idx -> return idx
127
  maybe (fail $ "Unknown node '" ++ node ++ "' for instance " ++ inst) return $
128
    M.lookup node ktn
130 129

  
131 130
-- | Lookups an instance into an assoc list.
132 131
lookupInstance :: (Monad m) => NameAssoc -> String -> m Idx
133 132
lookupInstance kti inst =
134
  case M.lookup inst kti of
135
    Nothing -> fail $ "Unknown instance '" ++ inst ++ "'"
136
    Just idx -> return idx
133
  maybe (fail $ "Unknown instance '" ++ inst ++ "'") return $ M.lookup inst kti
137 134

  
138 135
-- | Lookups a group into an assoc list.
139 136
lookupGroup :: (Monad m) => NameAssoc -> String -> String -> m Gdx
140 137
lookupGroup ktg nname gname =
141
  case M.lookup gname ktg of
142
    Nothing -> fail $ "Unknown group '" ++ gname ++ "' for node " ++ nname
143
    Just idx -> return idx
138
  maybe (fail $ "Unknown group '" ++ gname ++ "' for node " ++ nname) return $
139
    M.lookup gname ktg
144 140

  
145 141
-- | Check for prefix matches in names.
146 142
-- Implemented in Ganeti core utils.text.MatchNameComponent

Also available in: Unified diff