Revision b954f097 lib/query.py

b/lib/query.py
2234 2234
  return _PrepareFieldList(fields, [])
2235 2235

  
2236 2236

  
2237
class ExtStorageInfo(objects.ConfigObject):
2238
  __slots__ = [
2239
    "name",
2240
    "node_status",
2241
    "nodegroup_status",
2242
    "parameters",
2243
    ]
2244

  
2245

  
2246
def _BuildExtStorageFields():
2247
  """Builds list of fields for extstorage provider queries.
2248

  
2249
  """
2250
  fields = [
2251
    (_MakeField("name", "Name", QFT_TEXT, "ExtStorage provider name"),
2252
     None, 0, _GetItemAttr("name")),
2253
    (_MakeField("node_status", "NodeStatus", QFT_OTHER,
2254
                "Status from node"),
2255
     None, 0, _GetItemAttr("node_status")),
2256
    (_MakeField("nodegroup_status", "NodegroupStatus", QFT_OTHER,
2257
                "Overall Nodegroup status"),
2258
     None, 0, _GetItemAttr("nodegroup_status")),
2259
    (_MakeField("parameters", "Parameters", QFT_OTHER,
2260
                "ExtStorage provider parameters"),
2261
     None, 0, _GetItemAttr("parameters")),
2262
    ]
2263

  
2264
  return _PrepareFieldList(fields, [])
2265

  
2266

  
2237 2267
def _JobUnavailInner(fn, ctx, (job_id, job)): # pylint: disable=W0613
2238 2268
  """Return L{_FS_UNAVAIL} if job is None.
2239 2269

  
......
2595 2625
#: Fields available for operating system queries
2596 2626
OS_FIELDS = _BuildOsFields()
2597 2627

  
2628
#: Fields available for extstorage provider queries
2629
EXTSTORAGE_FIELDS = _BuildExtStorageFields()
2630

  
2598 2631
#: Fields available for job queries
2599 2632
JOB_FIELDS = _BuildJobFields()
2600 2633

  
......
2612 2645
  constants.QR_LOCK: LOCK_FIELDS,
2613 2646
  constants.QR_GROUP: GROUP_FIELDS,
2614 2647
  constants.QR_OS: OS_FIELDS,
2648
  constants.QR_EXTSTORAGE: EXTSTORAGE_FIELDS,
2615 2649
  constants.QR_JOB: JOB_FIELDS,
2616 2650
  constants.QR_EXPORT: EXPORT_FIELDS,
2617 2651
  constants.QR_NETWORK: NETWORK_FIELDS,

Also available in: Unified diff