Refactored host attributes to plugin registry
commitc9e0d02194a0ea21e01e58e8ade450b722577c30
authorLars Michelsen <lm@mathias-kettner.de>
Wed, 30 Jan 2019 07:54:54 +0000 (30 08:54 +0100)
committerLars Michelsen <lm@mathias-kettner.de>
Fri, 1 Feb 2019 14:22:28 +0000 (1 15:22 +0100)
tree1fe633e44b14e2f9ce6e066ce2d04498be8705d4
parent32b8ca34c925380b39bb0c46efe15787207105bc
Refactored host attributes to plugin registry

* Legacy plugin registration works for the common use cases.
  Using declare_host_attribute() works as in previous versions.
  The attribute classes have been replaced by factories that
  create classes for the attributes on demand. This works for
  the commonly used attribute types like ValueSpecAttribute,
  NagiosTextAttribute and so on.
* The attribute declarations that used subclassing have already
  been refactored. The others will be refactored in a future
  commit.
* The host attributes registration and access to host attributes
  is now exclusively done via host_attribute_registry.

CMK-1588

Change-Id: Ie7ff326797f0cf3685ca8102ce2263e3d1863840
cmk/gui/plugins/wato/__init__.py
cmk/gui/plugins/wato/builtin_attributes.py
cmk/gui/plugins/wato/utils/__init__.py
cmk/gui/plugins/webapi/utils.py
cmk/gui/wato/__init__.py
cmk/gui/wato/pages/bulk_edit.py
cmk/gui/wato/pages/folders.py
cmk/gui/watolib/__init__.py
cmk/gui/watolib/host_attributes.py
cmk/gui/watolib/hosts_and_folders.py
tests/unit/cmk/gui/watolib/test_host_attributes.py