From 0c4aa3dcf2373aa55ccc87f86dc68e2cfd162bf9 Mon Sep 17 00:00:00 2001 From: Michael Turek Date: Fri, 16 Jan 2015 21:56:03 +0000 Subject: Make all IPA error classes inherit from RESTError Currently several IPA error classes inherit from Exception. This patch makes the base class of those classes RESTError. These error classes are also restructured to initialize in the same manner as other classes which inherit from RESTError. Additionally test cases are added for these error classes. Change-Id: Ie6235e4cc25f072b789b2e72e4592d4cf02bfedc Closes-bug: #1410372 --- ironic_python_agent/errors.py | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) (limited to 'ironic_python_agent/errors.py') diff --git a/ironic_python_agent/errors.py b/ironic_python_agent/errors.py index 6058d191..5ec2e3bf 100644 --- a/ironic_python_agent/errors.py +++ b/ironic_python_agent/errors.py @@ -228,30 +228,34 @@ class VirtualMediaBootError(RESTError): super(VirtualMediaBootError, self).__init__(details) -class ExtensionError(Exception): +class ExtensionError(RESTError): pass -class UnknownNodeError(Exception): +class UnknownNodeError(RESTError): """Error raised when the agent is not associated with an Ironic node.""" message = 'Agent is not associated with an Ironic node.' - def __init__(self, message=None): - if message is not None: - self.message = message - super(UnknownNodeError, self).__init__(self.message) + def __init__(self, details=None): + if details is not None: + details = details + else: + details = self.message + super(UnknownNodeError, self).__init__(details) -class HardwareManagerNotFound(Exception): +class HardwareManagerNotFound(RESTError): """Error raised when no valid HardwareManager can be found.""" message = 'No valid HardwareManager found.' - def __init__(self, message=None): - if message is not None: - self.message = message - super(HardwareManagerNotFound, self).__init__(self.message) + def __init__(self, details=None): + if details is not None: + details = details + else: + details = self.message + super(HardwareManagerNotFound, self).__init__(details) class HardwareManagerMethodNotFound(RESTError): -- cgit v1.2.1