1 /* Copyright (c) 2003-2005 MySQL AB 2 Use is subject to license terms 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; version 2 of the License. 7 8 This program is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 GNU General Public License for more details. 12 13 You should have received a copy of the GNU General Public License 14 along with this program; if not, write to the Free Software 15 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ 16 17 #ifndef ERRORHANDLINGMACROS_H 18 #define ERRORHANDLINGMACROS_H 19 20 #include <ndbd_exit_codes.h> 21 #include "ErrorReporter.hpp" 22 23 extern const char programName[]; 24 25 enum NotUsed 26 { 27 warning, 28 ecError, 29 fatal, 30 assert 31 }; 32 33 #define ERROR_SET_SIGNAL(not_used, messageID, problemData, objectRef) \ 34 ErrorReporter::handleError(messageID, problemData, objectRef, NST_ErrorHandlerSignal) 35 #define ERROR_SET(not_used, messageID, problemData, objectRef) \ 36 ErrorReporter::handleError(messageID, problemData, objectRef) 37 // Description: 38 // Call ErrorHandler with the supplied arguments. The 39 // ErrorHandler decides how to report the error. 40 // Parameters: 41 // messageID IN Code identifying the error. If less 42 // than 1000 a unix error is assumed. If 43 // greater than 1000 the code is treated 44 // as the specific problem code. 45 // problemData IN A (short) text describing the error. 46 // The context information is added to 47 // this text. 48 // objectRef IN The name of the "victim" of the error. 49 // Specify NULL if not applicable. 50 // Return value: 51 // - 52 // Reported errors: 53 // - 54 // Additional information: 55 // - 56 57 #endif 58