~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/schema_engine/schema.h

  • Committer: Brian Aker
  • Date: 2010-12-19 06:20:54 UTC
  • mfrom: (2005.1.1 bug673105)
  • Revision ID: brian@tangent.org-20101219062054-1kt0l3dxs4z2z8md
Merge Dave.

Show diffs side-by-side

added added

removed removed

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