~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
 */
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
19
20
/**
21
 * @file
22
 *
23
 * Contains function declarations that deal with the SHOW commands.  These
24
 * will eventually go away, but for now we split these definitions out into
25
 * their own header file for easier maintenance
26
 */
27
#ifndef DRIZZLE_SERVER_SHOW_H
28
#define DRIZZLE_SERVER_SHOW_H
29
575.4.7 by Monty Taylor
More header cleanup.
30
#include <drizzled/global.h>
31
#include <stdint.h>
32
33
#include <drizzled/sql_list.h>
575.4.10 by Monty Taylor
Fixed show.h a little.
34
#include <drizzled/lex_string.h>
35
#include <drizzled/sql_parse.h>
575.4.7 by Monty Taylor
More header cleanup.
36
37
/* Forward declarations */
38
class String;
39
class JOIN;
40
typedef struct st_select_lex SELECT_LEX;
41
class Session;
42
struct st_ha_create_information;
43
typedef st_ha_create_information HA_CREATE_INFO;
44
struct TableList;
45
class ST_SCHEMA_TABLE;
46
47
enum find_files_result {
48
  FIND_FILES_OK,
49
  FIND_FILES_OOM,
50
  FIND_FILES_DIR
51
};
52
53
find_files_result find_files(Session *session, List<LEX_STRING> *files, const char *db,
54
                             const char *path, const char *wild, bool dir);
55
56
57
int store_create_info(Session *session, TableList *table_list, String *packet,
58
                      HA_CREATE_INFO  *create_info_arg);
59
bool store_db_create_info(Session *session, const char *dbname, String *buffer,
60
                          HA_CREATE_INFO *create_info);
61
bool schema_table_store_record(Session *session, Table *table);
62
63
int get_quote_char_for_identifier(Session *session, const char *name,
64
                                  uint32_t length);
65
66
ST_SCHEMA_TABLE *find_schema_table(Session *session, const char* table_name);
67
ST_SCHEMA_TABLE *get_schema_table(enum enum_schema_tables schema_table_idx);
68
int make_schema_select(Session *session,  SELECT_LEX *sel,
69
                       enum enum_schema_tables schema_table_idx);
70
int mysql_schema_table(Session *session, LEX *lex, TableList *table_list);
71
bool get_schema_tables_result(JOIN *join,
72
                              enum enum_schema_table_state executed_place);
73
enum enum_schema_tables get_schema_table_idx(ST_SCHEMA_TABLE *schema_table);
74
520.1.22 by Brian Aker
Second pass of thd cleanup
75
bool mysqld_show_open_tables(Session *session,const char *wild);
76
bool mysqld_show_logs(Session *session);
77
void append_identifier(Session *session, String *packet, const char *name,
482 by Brian Aker
Remove uint.
78
		       uint32_t length);
520.1.22 by Brian Aker
Second pass of thd cleanup
79
void mysqld_list_fields(Session *session,TableList *table, const char *wild);
80
int mysqld_dump_create_info(Session *session, TableList *table_list, int fd);
81
bool mysqld_show_create(Session *session, TableList *table_list);
82
bool mysqld_show_create_db(Session *session, char *dbname, HA_CREATE_INFO *create);
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
83
520.1.22 by Brian Aker
Second pass of thd cleanup
84
int mysqld_show_status(Session *session);
85
int mysqld_show_variables(Session *session,const char *wild);
86
bool mysqld_show_storage_engines(Session *session);
87
bool mysqld_show_authors(Session *session);
88
bool mysqld_show_contributors(Session *session);
89
bool mysqld_show_privileges(Session *session);
90
bool mysqld_show_column_types(Session *session);
575.4.7 by Monty Taylor
More header cleanup.
91
void mysqld_list_processes(Session *session,const char *user, bool verbose);
520.1.22 by Brian Aker
Second pass of thd cleanup
92
bool mysqld_help (Session *session, const char *text);
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
93
void calc_sum_of_all_status(STATUS_VAR *to);
94
520.1.22 by Brian Aker
Second pass of thd cleanup
95
void append_definer(Session *session, String *buffer, const LEX_STRING *definer_user,
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
96
                    const LEX_STRING *definer_host);
97
98
int add_status_vars(SHOW_VAR *list);
99
void remove_status_vars(SHOW_VAR *list);
100
void init_status_vars();
101
void free_status_vars();
102
void reset_status_vars();
103
104
#endif /* DRIZZLE_SERVER_SHOW_H */