]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
netcmd: models: stop using LookupError exception and change it to NotFound
authorRob van der Linde <rob@catalyst.net.nz>
Thu, 8 Feb 2024 09:47:14 +0000 (22:47 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 16 Feb 2024 02:41:36 +0000 (02:41 +0000)
LookupError is a base class for IndexError and KeyError and isn't really the appropriate exception.

NotFound inherits from ModelError just like the other model exceptions.

Signed-off-by: Rob van der Linde <rob@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Jo Sutton <josutton@catalyst.net.nz>
python/samba/netcmd/domain/auth/silo.py
python/samba/netcmd/domain/claim/claim_type.py
python/samba/netcmd/domain/models/auth_policy.py
python/samba/netcmd/domain/models/schema.py
python/samba/netcmd/domain/models/value_type.py

index 2e277610e8e6ff8f576c5b9923e87ac8119866d7..d35d5f716db4c85555e16641c71e610f865a27c2 100644 (file)
@@ -150,7 +150,7 @@ class cmd_domain_auth_silo_create(Command):
         """
         try:
             return AuthenticationPolicy.lookup(ldb, name)
-        except (LookupError, ValueError) as e:
+        except (ModelError, ValueError) as e:
             raise CommandError(e)
 
     def run(self, hostopts=None, sambaopts=None, credopts=None,
@@ -267,7 +267,7 @@ class cmd_domain_auth_silo_modify(Command):
         """
         try:
             return AuthenticationPolicy.lookup(ldb, name)
-        except (LookupError, ModelError, ValueError) as e:
+        except (ModelError, ValueError) as e:
             raise CommandError(e)
 
     def run(self, hostopts=None, sambaopts=None, credopts=None,
index c0825c660d2534c78959b415c1e1ec22831f61ca..754f8b111177686890754ee2c96277e26f341882 100644 (file)
@@ -92,7 +92,7 @@ class cmd_domain_claim_claim_type_create(Command):
             applies_to = [ClassSchema.lookup(ldb, name) for name in class_names]
             attribute = AttributeSchema.lookup(ldb, attribute_name)
             value_type = ValueType.lookup(ldb, attribute)
-        except (LookupError, ModelError, ValueError) as e:
+        except (ModelError, ValueError) as e:
             raise CommandError(e)
 
         # Generate the new Claim Type cn.
@@ -211,7 +211,7 @@ class cmd_domain_claim_claim_type_modify(Command):
             try:
                 applies_to = [ClassSchema.lookup(ldb, name)
                               for name in class_names]
-            except (LookupError, ValueError) as e:
+            except (ModelError, ValueError) as e:
                 raise CommandError(e)
 
             claim_type.claim_type_applies_to_class = [obj.dn for obj in applies_to]
index c56966c8e5141d5c8b370b37d954222d5221c209..a41c43a90b170af6c4bf0d2b0d75c8deac3ee9b3 100644 (file)
@@ -86,11 +86,11 @@ class AuthenticationPolicy(Model):
 
     @staticmethod
     def lookup(ldb, name):
-        """Helper function to return auth policy or raise LookupError.
+        """Helper function to return auth policy or raise NotFound.
 
         :param ldb: Ldb connection
         :param name: Either DN or name of Authentication Policy
-        :raises: LookupError if not found
+        :raises: NotFound if not found
         :raises: ValueError if name is not set
         """
         if not name:
index 59ece05084a32b846b7b59621ec5392c7c86ac7e..221cd73eaf8291233e8884b7b69fc1090a6e4080 100644 (file)
@@ -20,6 +20,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 
+from .exceptions import NotFound
 from .fields import BinaryField, BooleanField, DnField, GUIDField,\
     IntegerField, StringField
 from .model import Model
@@ -58,11 +59,11 @@ class ClassSchema(Model):
 
     @classmethod
     def lookup(cls, ldb, name):
-        """Helper function to lookup class or raise LookupError.
+        """Helper function to lookup class or raise NotFound.
 
         :param ldb: Ldb connection
         :param name: Class name
-        :raises: LookupError if not found
+        :raises: NotFound if not found
         :raises: ValueError if name is not provided
         """
         if not name:
@@ -70,7 +71,7 @@ class ClassSchema(Model):
 
         attr = cls.get(ldb, ldap_display_name=name)
         if attr is None:
-            raise LookupError(f"Could not locate {name} in class schema.")
+            raise NotFound(f"Could not locate {name} in class schema.")
 
         return attr
 
@@ -107,11 +108,11 @@ class AttributeSchema(Model):
 
     @classmethod
     def lookup(cls, ldb, name):
-        """Helper function to lookup attribute or raise LookupError.
+        """Helper function to lookup attribute or raise NotFound.
 
         :param ldb: Ldb connection
         :param name: Attribute name
-        :raises: LookupError if not found
+        :raises: NotFound if not found
         :raises: ValueError if name is not provided
         """
         if not name:
@@ -119,6 +120,6 @@ class AttributeSchema(Model):
 
         attr = cls.get(ldb, ldap_display_name=name)
         if attr is None:
-            raise LookupError(f"Could not locate {name} in attribute schema.")
+            raise NotFound(f"Could not locate {name} in attribute schema.")
 
         return attr
index 00a4e072427fb2ed4ced448f3a506d18951c83cb..84fe27995ccd1c59fb05e5d463970d38f581a834 100644 (file)
@@ -20,6 +20,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 
+from .exceptions import NotFound
 from .fields import BooleanField, DnField, IntegerField, StringField
 from .model import Model
 
@@ -67,11 +68,11 @@ class ValueType(Model):
 
     @classmethod
     def lookup(cls, ldb, attribute):
-        """Helper function to get ValueType by attribute or raise LookupError.
+        """Helper function to get ValueType by attribute or raise NotFound.
 
         :param ldb: Ldb connection
         :param attribute: AttributeSchema object
-        :raises: LookupError if not found
+        :raises: NotFound if not found
         :raises: ValueError for unknown attribute syntax
         """
         # If attribute is None.
@@ -87,8 +88,7 @@ class ValueType(Model):
         # This should always return something but should still be handled.
         value_type = cls.get(ldb, cn=cn)
         if value_type is None:
-            raise LookupError(
-                f"Could not find claim value type for {attribute}.")
+            raise NotFound(f"Could not find claim value type for {attribute}.")
 
         return value_type