~drizzle-trunk/drizzle/development

390.1.2 by Monty Taylor
Fixed copyright headers in drizzled/
1
/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2
 *  vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
3
 *
4
 *  Copyright (C) 2008 Sun Microsystems
5
 *
6
 *  This program is free software; you can redistribute it and/or modify
7
 *  it under the terms of the GNU General Public License as published by
8
 *  the Free Software Foundation; version 2 of the License.
9
 *
10
 *  This program is distributed in the hope that it will be useful,
11
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 *  GNU General Public License for more details.
14
 *
15
 *  You should have received a copy of the GNU General Public License
16
 *  along with this program; if not, write to the Free Software
17
 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18
 */
1 by brian
clean slate
19
575.1.6 by Monty Taylor
Cleaned up some headers for PCH.
20
#ifndef DRIZZLED_SQL_ERROR_H
21
#define DRIZZLED_SQL_ERROR_H
22
1253.1.4 by Monty Taylor
Moved sql_alloc into memory.
23
#include "drizzled/memory/sql_alloc.h"
1110.1.3 by Monty Taylor
Added ListenHandler as a member of PluginRegistry.
24
#include "drizzled/lex_string.h"
584.1.13 by Monty Taylor
Split out a little more code. Removed table_list.h from common_includes.
25
1100.3.35 by Padraig O'Sullivan
Updated mysql_show_warnings to take a std::bitset instead of a uint32_t to
26
#include <bitset>
27
1280.1.10 by Monty Taylor
Put everything in drizzled into drizzled namespace.
28
namespace drizzled
29
{
30
31
class DRIZZLE_ERROR: public memory::SqlAlloc
1 by brian
clean slate
32
{
33
public:
1100.3.35 by Padraig O'Sullivan
Updated mysql_show_warnings to take a std::bitset instead of a uint32_t to
34
  static const uint32_t NUM_ERRORS= 4;
1 by brian
clean slate
35
  enum enum_warning_level
36
  { WARN_LEVEL_NOTE, WARN_LEVEL_WARN, WARN_LEVEL_ERROR, WARN_LEVEL_END};
37
482 by Brian Aker
Remove uint.
38
  uint32_t code;
1 by brian
clean slate
39
  enum_warning_level level;
40
  char *msg;
660.1.3 by Eric Herman
removed trailing whitespace with simple script:
41
520.1.22 by Brian Aker
Second pass of thd cleanup
42
  DRIZZLE_ERROR(Session *session, uint32_t code_arg, enum_warning_level level_arg,
1 by brian
clean slate
43
	      const char *msg_arg)
44
    :code(code_arg), level(level_arg)
45
  {
46
    if (msg_arg)
520.1.22 by Brian Aker
Second pass of thd cleanup
47
      set_msg(session, msg_arg);
1 by brian
clean slate
48
  }
520.1.22 by Brian Aker
Second pass of thd cleanup
49
  void set_msg(Session *session, const char *msg_arg);
1 by brian
clean slate
50
};
51
520.1.22 by Brian Aker
Second pass of thd cleanup
52
DRIZZLE_ERROR *push_warning(Session *session, DRIZZLE_ERROR::enum_warning_level level,
482 by Brian Aker
Remove uint.
53
                          uint32_t code, const char *msg);
520.1.22 by Brian Aker
Second pass of thd cleanup
54
void push_warning_printf(Session *session, DRIZZLE_ERROR::enum_warning_level level,
482 by Brian Aker
Remove uint.
55
			 uint32_t code, const char *format, ...);
520.1.22 by Brian Aker
Second pass of thd cleanup
56
void drizzle_reset_errors(Session *session, bool force);
1100.3.35 by Padraig O'Sullivan
Updated mysql_show_warnings to take a std::bitset instead of a uint32_t to
57
bool mysqld_show_warnings(Session *session, 
58
                          std::bitset<DRIZZLE_ERROR::NUM_ERRORS> &levels_to_show);
1 by brian
clean slate
59
60
extern const LEX_STRING warning_level_names[];
575.1.6 by Monty Taylor
Cleaned up some headers for PCH.
61
1280.1.10 by Monty Taylor
Put everything in drizzled into drizzled namespace.
62
} /* namespace drizzled */
63
575.1.6 by Monty Taylor
Cleaned up some headers for PCH.
64
#endif /* DRIZZLED_SQL_ERROR_H */