78
77
return ha_blackhole_exts;
81
int doCreateTable(Session*,
80
int doCreateTable(Session&,
83
82
drizzled::TableIdentifier &identifier,
84
83
drizzled::message::Table&);
94
93
drizzled::message::Table &table_message);
96
95
void doGetTableNames(drizzled::CachedDirectory &directory,
97
string&, set<string>& set_of_names)
97
set<string>& set_of_names)
99
99
drizzled::CachedDirectory::Entries entries= directory.getEntries();
141
141
bool doDoesTableExist(Session& session, TableIdentifier &identifier);
142
142
int doRenameTable(Session&, TableIdentifier &from, TableIdentifier &to);
143
void doGetTableIdentifiers(drizzled::CachedDirectory &directory,
144
drizzled::SchemaIdentifier &schema_identifier,
145
drizzled::TableIdentifiers &set_of_identifiers);
149
void BlackholeEngine::doGetTableIdentifiers(drizzled::CachedDirectory &directory,
150
drizzled::SchemaIdentifier &schema_identifier,
151
drizzled::TableIdentifiers &set_of_identifiers)
153
drizzled::CachedDirectory::Entries entries= directory.getEntries();
155
for (drizzled::CachedDirectory::Entries::iterator entry_iter= entries.begin();
156
entry_iter != entries.end(); ++entry_iter)
158
drizzled::CachedDirectory::Entry *entry= *entry_iter;
159
const string *filename= &entry->filename;
161
assert(filename->size());
163
const char *ext= strchr(filename->c_str(), '.');
165
if (ext == NULL || my_strcasecmp(system_charset_info, ext, BLACKHOLE_EXT) ||
166
(filename->compare(0, strlen(TMP_FILE_PREFIX), TMP_FILE_PREFIX) == 0))
170
char uname[NAME_LEN + 1];
171
uint32_t file_name_len;
173
file_name_len= filename_to_tablename(filename->c_str(), uname, sizeof(uname));
174
// TODO: Remove need for memory copy here
175
uname[file_name_len - sizeof(BLACKHOLE_EXT) + 1]= '\0'; // Subtract ending, place NULL
177
set_of_identifiers.push_back(TableIdentifier(schema_identifier, uname));
146
182
int BlackholeEngine::doRenameTable(Session&, TableIdentifier &from, TableIdentifier &to)
209
int BlackholeEngine::doCreateTable(Session*,
245
int BlackholeEngine::doCreateTable(Session&,
211
247
drizzled::TableIdentifier &identifier,
212
248
drizzled::message::Table& proto)