Add getInterface() to Resource API 54/69654/2
authorParker Berberian <pberberian@iol.unh.edu>
Thu, 6 Feb 2020 15:18:42 +0000 (10:18 -0500)
committerParker Berberian <pberberian@iol.unh.edu>
Mon, 10 Feb 2020 16:32:02 +0000 (11:32 -0500)
Change-Id: I714b6054bfc199d55de9619672768f8fc1355747
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
src/resource_inventory/models.py

index f462ac5..a8b75d9 100644 (file)
@@ -127,6 +127,13 @@ class Resource(models.Model):
         """Make this resource available again for new boookings."""
         raise NotImplementedError("Must implement in concrete Resource classes")
 
+    def get_interfaces(self):
+        """
+        Returns a list of interfaces on this resource.
+        The ordering of interfaces should be consistent.
+        """
+        raise NotImplementedError("Must implement in concrete Resource classes")
+
 
 # Generic resource templates
 class GenericResourceBundle(models.Model):
@@ -420,6 +427,9 @@ class Host(Resource):
         self.booked = False
         self.save()
 
+    def get_interfaces(self):
+        return list(self.interfaces.all().order_by('bus_address'))
+
 
 class Interface(models.Model):
     id = models.AutoField(primary_key=True)