Spaces:
Sleeping
Sleeping
# The Python ISAPI package. | |
# Exceptions thrown by the DLL framework. | |
class ISAPIError(Exception): | |
def __init__(self, errno, strerror=None, funcname=None): | |
# named attributes match IOError etc. | |
self.errno = errno | |
self.strerror = strerror | |
self.funcname = funcname | |
Exception.__init__(self, errno, strerror, funcname) | |
def __str__(self): | |
if self.strerror is None: | |
try: | |
import win32api | |
self.strerror = win32api.FormatMessage(self.errno).strip() | |
except: | |
self.strerror = "no error message is available" | |
# str() looks like a win32api error. | |
return str((self.errno, self.strerror, self.funcname)) | |
class FilterError(ISAPIError): | |
pass | |
class ExtensionError(ISAPIError): | |
pass | |
# A little development aid - a filter or extension callback function can | |
# raise one of these exceptions, and the handler module will be reloaded. | |
# This means you can change your code without restarting IIS. | |
# After a reload, your filter/extension will have the GetFilterVersion/ | |
# GetExtensionVersion function called, but with None as the first arg. | |
class InternalReloadException(Exception): | |
pass | |