summaryrefslogtreecommitdiffstats
path: root/dashboard/src/dashboard/exceptions.py
diff options
context:
space:
mode:
Diffstat (limited to 'dashboard/src/dashboard/exceptions.py')
-rw-r--r--dashboard/src/dashboard/exceptions.py56
1 files changed, 56 insertions, 0 deletions
diff --git a/dashboard/src/dashboard/exceptions.py b/dashboard/src/dashboard/exceptions.py
new file mode 100644
index 0000000..7111bf8
--- /dev/null
+++ b/dashboard/src/dashboard/exceptions.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2018 Parker Berberian, Sawyer Bergeron, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+
+class ResourceProvisioningException(Exception):
+ """
+ Resources could not be provisioned
+ """
+ pass
+
+
+class ModelValidationException(Exception):
+ """
+ Validation before saving model returned issues
+ """
+ pass
+
+
+class ResourceAvailabilityException(ResourceProvisioningException):
+ """
+ Requested resources are not *currently* available
+ """
+ pass
+
+
+class ResourceExistenceException(ResourceAvailabilityException):
+ """
+ Requested resources do not exist or do not match any known resources
+ """
+ pass
+
+
+class NonUniqueHostnameException(Exception):
+ pass
+
+
+class InvalidHostnameException(Exception):
+ pass
+
+
+class InvalidVlanConfigurationException(Exception):
+ pass
+
+
+class NetworkExistsException(Exception):
+ pass
+
+
+class BookingLengthException(Exception):
+ pass