summaryrefslogtreecommitdiff
path: root/storage/pbxt/src/ha_pbxt.h
diff options
context:
space:
mode:
Diffstat (limited to 'storage/pbxt/src/ha_pbxt.h')
-rw-r--r--storage/pbxt/src/ha_pbxt.h35
1 files changed, 26 insertions, 9 deletions
diff --git a/storage/pbxt/src/ha_pbxt.h b/storage/pbxt/src/ha_pbxt.h
index d48bcd34147..a7548d6fa86 100644
--- a/storage/pbxt/src/ha_pbxt.h
+++ b/storage/pbxt/src/ha_pbxt.h
@@ -27,9 +27,9 @@
#ifdef DRIZZLED
#include <drizzled/common.h>
-#include <drizzled/handler.h>
-#include <drizzled/plugin/storage_engine.h>
#include <mysys/thr_lock.h>
+#include <drizzled/cursor.h>
+
#else
#include "mysql_priv.h"
#endif
@@ -53,17 +53,31 @@ class ha_pbxt;
#ifdef DRIZZLED
-class PBXTStorageEngine : public StorageEngine {
+class PBXTStorageEngine : public drizzled::plugin::StorageEngine
+{
+
+ int delete_system_table(const char *table_path);
+ int rename_system_table(const char * from, const char * to);
+
public:
PBXTStorageEngine(std::string name_arg)
- : StorageEngine(name_arg, HTON_NO_FLAGS) {}
+ : drizzled::plugin::StorageEngine(name_arg, HTON_NO_FLAGS) {}
+
+ void operator delete(void *) {}
+ void operator delete[] (void *) {}
/* override */ int close_connection(Session *);
/* override */ int commit(Session *, bool);
/* override */ int rollback(Session *, bool);
- /* override */ handler *create(TABLE_SHARE *, MEM_ROOT *);
+ /* override */ Cursor *create(TABLE_SHARE *, MEM_ROOT *);
/* override */ void drop_database(char *);
/* override */ bool show_status(Session *, stat_print_fn *, enum ha_stat_type);
+ /* override */ const char **bas_ext() const;
+ /* override */ int doCreateTable(Session *session, const char *table_name,
+ Table &table_arg, HA_CREATE_INFO
+ &create_info, drizzled::message::Table &proto);
+ /* override */ int doRenameTable(Session *, const char *from, const char *to);
+ /* override */ int doDropTable(Session &session, std::string table_path);
};
typedef PBXTStorageEngine handlerton;
@@ -139,9 +153,9 @@ class ha_pbxt: public handler
* don't implement this method unless you really have indexes.
*/
const char *index_type(uint inx) { (void) inx; return "BTREE"; }
-
+#ifndef DRIZZLED
const char **bas_ext() const;
-
+#endif
MX_UINT8_T table_cache_type();
/*
@@ -241,11 +255,13 @@ class ha_pbxt: public handler
int optimize(THD* thd, HA_CHECK_OPT* check_opt);
int check(THD* thd, HA_CHECK_OPT* check_opt);
ha_rows records_in_range(uint inx, key_range *min_key, key_range *max_key);
- int delete_table(const char *from);
+#ifndef DRIZZLED
int delete_system_table(const char *table_path);
- int rename_table(const char * from, const char * to);
+ int delete_table(const char *from);
int rename_system_table(const char * from, const char * to);
+ int rename_table(const char * from, const char * to);
int create(const char *name, TABLE *form, HA_CREATE_INFO *create_info); //required
+#endif
void update_create_info(HA_CREATE_INFO *create_info);
THR_LOCK_DATA **store_lock(THD *thd, THR_LOCK_DATA **to, enum thr_lock_type lock_type); //required
@@ -277,6 +293,7 @@ struct XTThread *xt_ha_thd_to_self(THD* thd);
int xt_ha_pbxt_to_mysql_error(int xt_err);
int xt_ha_pbxt_thread_error_for_mysql(THD *thd, const XTThreadPtr self, int ignore_dup_key);
void xt_ha_all_threads_close_database(XTThreadPtr self, XTDatabase *db);
+void ha_set_auto_increment(XTOpenTablePtr ot, Field *nr);
/*
* These hooks are suppossed to only be used by InnoDB: