1
/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2
* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
4
* Copyright (C) 2009 Sun Microsystems
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; either version 2 of the License, or
9
* (at your option) any later version.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
#ifndef PLUGIN_INFO_SCHEMA_INFO_SCHEMA_COLUMNS_H
22
#define PLUGIN_INFO_SCHEMA_INFO_SCHEMA_COLUMNS_H
24
#include "drizzled/plugin/info_schema_table.h"
29
* Create the various columns for the CHARACTER_SET I_S table and add them
30
* to the std::vector of columns for the CHARACTER_SET table.
32
* @param[out] cols vector to add columns to
33
* @return false on success; true on failure
35
bool createCharSetColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
38
* Create the various columns for the Collations I_S table and add them
39
* to the std::vector of columns for the Collations table.
41
* @param[out] cols vector to add columns to
42
* @return false on success; true on failure
44
bool createCollationColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
47
* Create the various columns for the character set applicability
48
* I_S table and add them to the std::vector of columns for the
51
* @param[out] cols vector to add columns to
52
* @return false on success; true on failure
54
bool createCollCharSetColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
57
* Create the various columns for the COLUMNS
58
* I_S table and add them to the std::vector of columns for the
61
* @param[out] cols vector to add columns to
62
* @return false on success; true on failure
64
bool createColColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
67
* Create the various columns for the key column usage
68
* I_S table and add them to the std::vector of columns for the
71
* @param[out] cols vector to add columns to
72
* @return false on success; true on failure
74
bool createKeyColUsageColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
77
* Create the various columns for the OPEN_TABLES
78
* I_S table and add them to the std::vector of columns for the
81
* @param[out] cols vector to add columns to
82
* @return false on success; true on failure
84
bool createOpenTabColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
87
* Create the various columns for the PLUGINS
88
* I_S table and add them to the std::vector of columns for the
91
* @param[out] cols vector to add columns to
92
* @return false on success; true on failure
94
bool createPluginsColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
97
* Create the various columns for the MODULES
98
* I_S table and add them to the std::vector of columns for the
101
* @param[out] cols vector to add columns to
102
* @return false on success; true on failure
104
bool createModulesColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
107
* Create the various volumns for the PROCESSLIST I_S table and add them
108
* to the std::vector of columns for the PROCESSLIST table.
110
* @param[out] cols vector to add columns to
111
* @return false on success; true on failure
113
bool createProcessListColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
116
* Create the various volumns for the REFERENTIAL_CONSTRAINTS I_S table
117
* and add them to the std::vector of columns for this table.
119
* @param[out] cols vector to add columns to
120
* @return false on success; true on failure
122
bool createRefConstraintColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
125
* Create the various volumns for the SCHEMATA I_S table
126
* and add them to the std::vector of columns for this table.
128
* @param[out] cols vector to add columns to
129
* @return false on success; true on failure
131
bool createSchemataColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
134
* Create the various volumns for the STATISTICS I_S table
135
* and add them to the std::vector of columns for this table.
137
* @param[out] cols vector to add columns to
138
* @return false on success; true on failure
140
bool createStatsColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
143
* Create the various volumns for numerous I_S tables
144
* and add them to the std::vector of columns for these table.
146
* @param[out] cols vector to add columns to
147
* @return false on success; true on failure
149
bool createStatusColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
152
* Create the various volumns for the TABLE_CONSTRAINTS I_S table
153
* and add them to the std::vector of columns for this table.
155
* @param[out] cols vector to add columns to
156
* @return false on success; true on failure
158
bool createTabConstraintsColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
161
* Create the various volumns for the TABLE_NAMES I_S table
162
* and add them to the std::vector of columns for this table.
164
* @param[out] cols vector to add columns to
165
* @return false on success; true on failure
167
bool createTablesColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
170
* Create the various volumns for the TABLE_NAMES I_S table
171
* and add them to the std::vector of columns for this table.
173
* @param[out] cols vector to add columns to
174
* @return false on success; true on failure
176
bool createTabNamesColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
179
* Iterate through the given vector of columns and delete the memory that
180
* has been allocated for them.
182
* @param[out] cols vector to clear and de-allocate memory from
184
void clearColumns(std::vector<const drizzled::plugin::ColumnInfo *>& cols);
186
#endif /* PLUGIN_INFO_SCHEMA_INFO_SCHEMA_COLUMNS_H */