Revision c4e0d065 src/Ganeti/Query/Server.hs

b/src/Ganeti/Query/Server.hs
53 53
import Ganeti.OpCodes (TagObject(..))
54 54
import qualified Ganeti.Query.Language as Qlang
55 55
import Ganeti.Query.Query
56
import Ganeti.Query.Filter (FilterConstructor, makeSimpleFilter
57
                           , makeHostnameFilter)
56
import Ganeti.Query.Filter (makeSimpleFilter)
58 57

  
59 58
-- | A type for functions that can return the configuration when
60 59
-- executed.
......
66 65
                   -> [Either String Integer] -- ^ Requested names
67 66
                                              -- (empty means all)
68 67
                   -> [String]        -- ^ Requested fields
69
                   -> Maybe FilterConstructor -- ^ the filter algorithm
70
                                              -- to be used, defaults to
71
                                              -- makeSimpleFilter
72 68
                   -> Bool            -- ^ Whether to do sync queries or not
73 69
                   -> IO (GenericResult GanetiException JSValue)
74
handleClassicQuery _ _ _ _ _ True =
70
handleClassicQuery _ _ _ _ True =
75 71
  return . Bad $ OpPrereqError "Sync queries are not allowed" ECodeInval
76
handleClassicQuery cfg qkind names fields filterconstr _ = do
77
  let fltcon = fromMaybe makeSimpleFilter filterconstr
78
      flt = fltcon (nameField qkind) names
72
handleClassicQuery cfg qkind names fields _ = do
73
  let flt = makeSimpleFilter (nameField qkind) names
79 74
  qr <- query cfg True (Qlang.Query qkind fields flt)
80 75
  return $ showJSON <$> (qr >>= queryCompat)
81 76

  
......
168 163

  
169 164
handleCall cfg (QueryNodes names fields lock) =
170 165
  handleClassicQuery cfg (Qlang.ItemTypeOpCode Qlang.QRNode)
171
    (map Left names) fields (Just makeHostnameFilter) lock
166
    (map Left names) fields lock
172 167

  
173 168
handleCall cfg (QueryGroups names fields lock) =
174 169
  handleClassicQuery cfg (Qlang.ItemTypeOpCode Qlang.QRGroup)
175
    (map Left names) fields Nothing lock
170
    (map Left names) fields lock
176 171

  
177 172
handleCall cfg (QueryJobs names fields) =
178 173
  handleClassicQuery cfg (Qlang.ItemTypeLuxi Qlang.QRJob)
179
    (map (Right . fromIntegral . fromJobId) names)  fields Nothing False
174
    (map (Right . fromIntegral . fromJobId) names)  fields False
180 175

  
181 176
handleCall _ op =
182 177
  return . Bad $

Also available in: Unified diff