1#!/usr/bin/env python3 2# coding=utf-8 3 4# 5# Copyright (c) 2020-2021 Huawei Device Co., Ltd. 6# Licensed under the Apache License, Version 2.0 (the "License"); 7# you may not use this file except in compliance with the License. 8# You may obtain a copy of the License at 9# 10# http://www.apache.org/licenses/LICENSE-2.0 11# 12# Unless required by applicable law or agreed to in writing, software 13# distributed under the License is distributed on an "AS IS" BASIS, 14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15# See the License for the specific language governing permissions and 16# limitations under the License. 17# 18 19 20class ParamError(Exception): 21 def __init__(self, error_msg, error_no=""): 22 super(ParamError, self).__init__(error_msg, error_no) 23 self.error_msg = error_msg 24 self.error_no = error_no 25 26 def __str__(self): 27 return str(self.error_msg) 28 29 30class LiteDeviceError(Exception): 31 def __init__(self, error_msg, error_no=""): 32 super(LiteDeviceError, self).__init__(error_msg, error_no) 33 self.error_msg = error_msg 34 self.error_no = error_no 35 36 def __str__(self): 37 return str(self.error_msg) 38 39 40class DeviceError(Exception): 41 def __init__(self, error_msg, error_no=""): 42 super(DeviceError, self).__init__(error_msg, error_no) 43 self.error_msg = error_msg 44 self.error_no = error_no 45 46 def __str__(self): 47 return str(self.error_msg) 48 49 50class ExecuteTerminate(Exception): 51 def __init__(self, error_msg="ExecuteTerminate", error_no=""): 52 super(ExecuteTerminate, self).__init__(error_msg, error_no) 53 self.error_msg = error_msg 54 self.error_no = error_no 55 56 def __str__(self): 57 return str(self.error_msg) 58 59 60class ReportException(Exception): 61 """ 62 Exception thrown when a shell command executed on a device takes too long 63 to send its output. 64 """ 65 def __init__(self, error_msg="ReportException", error_no=""): 66 super(ReportException, self).__init__(error_msg, error_no) 67 self.error_msg = error_msg 68 self.error_no = error_no 69 70 def __str__(self): 71 return str(self.error_msg) 72 73 74class LiteParamError(LiteDeviceError): 75 def __init__(self, error_msg, error_no=""): 76 super(LiteParamError, self).__init__(error_msg, error_no) 77 self.error_msg = error_msg 78 self.error_no = error_no 79 80 def __str__(self): 81 return str(self.error_msg) 82 83 84class LiteDeviceConnectError(LiteDeviceError): 85 def __init__(self, error_msg, error_no=""): 86 super(LiteDeviceConnectError, self).__init__(error_msg, error_no) 87 self.error_msg = error_msg 88 self.error_no = error_no 89 90 def __str__(self): 91 return str(self.error_msg) 92 93 94class LiteDeviceMountError(LiteDeviceError): 95 def __init__(self, error_msg, error_no=""): 96 super(LiteDeviceMountError, self).__init__(error_msg, error_no) 97 self.error_msg = error_msg 98 self.error_no = error_no 99 100 def __str__(self): 101 return str(self.error_msg) 102 103 104class LiteDeviceReadOutputError(LiteDeviceError): 105 def __init__(self, error_msg, error_no=""): 106 super(LiteDeviceReadOutputError, self).__init__(error_msg, error_no) 107 self.error_msg = error_msg 108 self.error_no = error_no 109 110 def __str__(self): 111 return str(self.error_msg) 112 113 114class LiteDeviceExecuteCommandError(LiteDeviceError): 115 def __init__(self, error_msg, error_no=""): 116 super(LiteDeviceExecuteCommandError, self).__init__( 117 error_msg, error_no) 118 self.error_msg = error_msg 119 self.error_no = error_no 120 121 def __str__(self): 122 return str(self.error_msg) 123 124 125class LiteDeviceTimeout(LiteDeviceError): 126 def __init__(self, error_msg, error_no=""): 127 super(LiteDeviceTimeout, self).__init__( 128 error_msg, error_no) 129 self.error_msg = error_msg 130 self.error_no = error_no 131 132 def __str__(self): 133 return str(self.error_msg)