return APIException for sliceplus errors instead of valueerror
Scott Baker [Sat, 24 Jan 2015 08:01:29 +0000 (00:01 -0800)]
planetstack/core/xoslib/objects/sliceplus.py

index d3e618d..0c66258 100644 (file)
@@ -1,6 +1,7 @@
 from core.models import Slice, SlicePrivilege, SliceRole, Sliver, Site, Node, User
 from plus import PlusObjectMixin
 from operator import itemgetter, attrgetter
+from rest_framework.exceptions import APIException
 
 class SlicePlus(Slice, PlusObjectMixin):
     class Meta:
@@ -195,7 +196,7 @@ class SlicePlus(Slice, PlusObjectMixin):
                 nodes = self.get_node_allocation([site])
 
                 if (not nodes):
-                    raise ValueError("no nodes in site %s" % site_name)
+                    raise APIException(detail="no nodes in site %s" % site_name)
 
                 while (len(slivers) < desired_allocation):
                     # pick the least allocated node
@@ -273,7 +274,7 @@ class SlicePlus(Slice, PlusObjectMixin):
 
         # uh oh, we didn't find a network
 
-        raise ValueError("No network was found that ports could be set on")
+        raise APIException(detail="No network was found that ports could be set on")