~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/schema_engine/schema.h

  • Committer: Olaf van der Spek
  • Date: 2011-03-24 00:16:14 UTC
  • mto: This revision was merged to the branch mainline in revision 2251.
  • Revision ID: olafvdspek@gmail.com-20110324001614-wvmgc6eg52oq2321
Remove const_reference and reference from Session

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
19
19
 */
20
20
 
21
 
#ifndef PLUGIN_SCHEMA_ENGINE_SCHEMA_H
22
 
#define PLUGIN_SCHEMA_ENGINE_SCHEMA_H
 
21
#pragma once
23
22
 
24
23
#include <assert.h>
25
24
#include <drizzled/plugin/storage_engine.h>
34
33
 
35
34
class Schema : public drizzled::plugin::StorageEngine
36
35
{
37
 
  bool writeSchemaFile(const drizzled::SchemaIdentifier &schema_identifier, const drizzled::message::Schema &db);
38
 
  bool readSchemaFile(const drizzled::SchemaIdentifier &schema_identifier, drizzled::message::Schema &schema);
 
36
  bool writeSchemaFile(const drizzled::identifier::Schema &schema_identifier, const drizzled::message::Schema &db);
 
37
  bool readSchemaFile(const drizzled::identifier::Schema &schema_identifier, drizzled::message::Schema &schema);
 
38
  bool readSchemaFile(std::string filename, drizzled::message::Schema &schema);
39
39
 
40
40
  void prime();
 
41
  void startup(drizzled::Session &session);
41
42
 
42
43
  typedef boost::unordered_map<std::string, drizzled::message::schema::shared_ptr> SchemaCache;
43
44
  SchemaCache schema_cache;
56
57
    return NULL;
57
58
  }
58
59
 
59
 
  void doGetSchemaIdentifiers(drizzled::SchemaIdentifier::vector &set_of_names);
60
 
  bool doGetSchemaDefinition(const drizzled::SchemaIdentifier&, drizzled::message::schema::shared_ptr &proto);
 
60
  void doGetSchemaIdentifiers(drizzled::identifier::Schema::vector &set_of_names);
 
61
  drizzled::message::schema::shared_ptr doGetSchemaDefinition(const drizzled::identifier::Schema&);
61
62
 
62
63
  bool doCreateSchema(const drizzled::message::Schema &schema_message);
63
64
 
64
65
  bool doAlterSchema(const drizzled::message::Schema &schema_message);
65
66
 
66
 
  bool doDropSchema(const drizzled::SchemaIdentifier&);
 
67
  bool doDropSchema(const drizzled::identifier::Schema&);
67
68
 
68
69
  // Below are table methods that we don't implement (and don't need)
69
70
 
70
71
  int doGetTableDefinition(drizzled::Session&,
71
 
                           const drizzled::TableIdentifier&,
 
72
                           const drizzled::identifier::Table&,
72
73
                           drizzled::message::Table&)
73
74
  {
74
75
    return ENOENT;
75
76
  }
76
77
 
77
 
  bool doDoesTableExist(drizzled::Session&, const drizzled::TableIdentifier&)
 
78
  bool doDoesTableExist(drizzled::Session&, const drizzled::identifier::Table&)
78
79
  {
79
80
    return false;
80
81
  }
81
82
 
82
 
  int doRenameTable(drizzled::Session&, const drizzled::TableIdentifier&, const drizzled::TableIdentifier&)
 
83
  int doRenameTable(drizzled::Session&, const drizzled::identifier::Table&, const drizzled::identifier::Table&)
83
84
  {
84
 
    return EPERM;
 
85
    return drizzled::HA_ERR_NO_SUCH_TABLE;
85
86
  }
86
87
 
87
88
  int doCreateTable(drizzled::Session&,
88
89
                    drizzled::Table&,
89
 
                    const drizzled::TableIdentifier&,
90
 
                    drizzled::message::Table&)
 
90
                    const drizzled::identifier::Table&,
 
91
                    const drizzled::message::Table&)
91
92
  {
92
 
    return EPERM;
 
93
    return drizzled::ER_TABLE_PERMISSION_DENIED;
93
94
  }
94
95
 
95
 
  int doDropTable(drizzled::Session&, const drizzled::TableIdentifier&)
 
96
  int doDropTable(drizzled::Session&, const drizzled::identifier::Table&)
96
97
  {
97
 
    return 0;
 
98
    return drizzled::HA_ERR_NO_SUCH_TABLE;
98
99
  }
99
100
 
100
101
  const char **bas_ext() const 
107
108
                          uint64_t *,
108
109
                          uint64_t *)
109
110
  {}
 
111
 
110
112
  void doGetTableIdentifiers(drizzled::CachedDirectory &directory,
111
 
                             const drizzled::SchemaIdentifier &schema_identifier,
112
 
                             drizzled::TableIdentifier::vector &set_of_identifiers);
 
113
                             const drizzled::identifier::Schema &schema_identifier,
 
114
                             drizzled::identifier::Table::vector &set_of_identifiers);
113
115
};
114
116
 
115
 
#endif /* PLUGIN_SCHEMA_ENGINE_SCHEMA_H */