Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #include "proxy/Main.h"
00033 #include "Error.h"
00034 #include <time.h>
00035 #include "ink_platform.h"
00036
00037 ErrorClass::~ErrorClass()
00038 {
00039 }
00040
00041 void
00042 ErrorClass::operator() (const char *aformat_string, ...)
00043 {
00044 va_list aap;
00045 va_start(aap, aformat_string);
00046 format_string = aformat_string;
00047 raise(aap);
00048 va_end(aap);
00049 delete this;
00050 }
00051
00052 void
00053 ErrorClass::raise(va_list ap, const char * )
00054 {
00055 SrcLoc loc(filename, function_name, line_number);
00056 diags->print_va(NULL, DL_Fatal, &loc, format_string, ap);
00057 }
00058
00059
00060
00061
00062 void
00063 RequestFatalClass::raise(va_list ap, const char *prefix)
00064 {
00065 ErrorClass::raise(ap, prefix ? prefix : "REQUEST FATAL");
00066 ink_assert(!"RequestFatal");
00067 }
00068
00069
00070
00071
00072 void
00073 ThreadFatalClass::raise(va_list ap, const char *prefix)
00074 {
00075 ErrorClass::raise(ap, prefix ? prefix : "THREAD FATAL");
00076 ink_assert(!"ThreadFatal");
00077 ink_thread_exit(0);
00078 }
00079
00080
00081
00082
00083 void
00084 ProcessorFatalClass::raise(va_list ap, const char *prefix)
00085 {
00086 ErrorClass::raise(ap, prefix ? prefix : "PROCESSOR FATAL");
00087 ink_assert(!"ProcessorFatal");
00088 }
00089
00090
00091
00092
00093 void
00094 ProcessFatalClass::raise(va_list ap, const char *prefix)
00095 {
00096 ErrorClass::raise(ap, prefix ? prefix : "PROCESS FATAL");
00097
00098 ink_assert(!"ProcessFatal");
00099 }
00100
00101
00102
00103
00104 void
00105 MachineFatalClass::raise(va_list ap, const char *prefix)
00106 {
00107 ErrorClass::raise(ap, prefix ? prefix : "MACHINE FATAL");
00108 exit(2);
00109 }