python: models: add kwargs to __json__ and as_dict methods
authorRob van der Linde <rob@catalyst.net.nz>
Wed, 13 Mar 2024 09:20:39 +0000 (22:20 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 20 Mar 2024 03:49:35 +0000 (03:49 +0000)
Allows passing arguments through

Signed-off-by: Rob van der Linde <rob@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/domain/models/model.py

index ea23db85da828255389661925ae68aaa362656b7..55cada972b60ab6436eb2ef1433529ac207f1628 100644 (file)
@@ -110,9 +110,9 @@ class Model(metaclass=ModelMeta):
         else:
             return self.dn == other.dn
 
-    def __json__(self):
+    def __json__(self, **kwargs):
         """Automatically called by custom JSONEncoder class."""
-        return self.as_dict()
+        return self.as_dict(**kwargs)
 
     @staticmethod
     def get_base_dn(ldb):
@@ -182,7 +182,7 @@ class Model(metaclass=ModelMeta):
 
         self._apply(ldb, res[0])
 
-    def as_dict(self, include_hidden=False):
+    def as_dict(self, include_hidden=False, **kwargs):
         """Returns a dict representation of the model.
 
         :param include_hidden: Include fields with hidden=True when set