~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/plugin/catalog.h

  • Committer: Lee Bieber
  • Date: 2011-01-12 02:31:03 UTC
  • mfrom: (2068.7.5 session-fix)
  • mto: This revision was merged to the branch mainline in revision 2076.
  • Revision ID: kalebral@gmail.com-20110112023103-nmz26cv1j32jc6n3
Merge Brian - fix bug 527084 - DROP TABLE: getTableDefiniton returns EEXIST but doDropTable returns ENOENT leads to SIGSEGV

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
#include <drizzled/catalog/instance.h>
28
28
#include <drizzled/catalog/engine.h>
29
29
 
30
 
#include "drizzled/visibility.h"
31
 
 
32
30
namespace drizzled
33
31
{
34
32
namespace plugin
35
33
{
36
34
 
37
 
/* 
38
 
  This object handles the aggregate of all operations for any/all of the Catalog engines.
39
 
*/
40
 
class DRIZZLED_API Catalog : public Plugin {
 
35
class Catalog : public Plugin {
41
36
  /* Disable default constructors */
42
37
  Catalog();
43
38
  Catalog(const Catalog &);
53
48
 
54
49
  virtual catalog::Engine::shared_ptr engine()= 0;
55
50
 
56
 
  static bool create(identifier::Catalog::const_reference);
57
 
  static bool create(identifier::Catalog::const_reference, message::catalog::shared_ptr &);
58
 
  static bool drop(identifier::Catalog::const_reference);
 
51
  static bool create(const identifier::Catalog &);
 
52
  static bool create(const identifier::Catalog &, message::catalog::shared_ptr &);
 
53
  static bool drop(const identifier::Catalog &);
59
54
 
60
 
  static bool lock(identifier::Catalog::const_reference);
61
 
  static bool unlock(identifier::Catalog::const_reference);
 
55
  static bool lock(const identifier::Catalog &);
 
56
  static bool unlock(const identifier::Catalog &);
62
57
 
63
58
  // Required for plugin interface
64
59
  static bool addPlugin(plugin::Catalog *plugin);
65
60
  static void removePlugin(plugin::Catalog *plugin);
66
61
 
67
62
  // Get Meta information
68
 
  static bool exist(identifier::Catalog::const_reference);
 
63
  static bool exist(const identifier::Catalog &identifier);
69
64
  static void getIdentifiers(identifier::Catalog::vector &identifiers);
70
65
  static void getMessages(message::catalog::vector &messages);
71
 
  static message::catalog::shared_ptr getMessage(identifier::Catalog::const_reference);
 
66
  static bool getMessage(const identifier::Catalog &identifier, message::catalog::shared_ptr &message);
72
67
 
73
68
  // Get Instance
74
 
  static catalog::Instance::shared_ptr getInstance(identifier::Catalog::const_reference);
 
69
  static catalog::Instance::shared_ptr getInstance(const identifier::Catalog &identifier);
75
70
};
76
71
 
77
72
} /* namespace plugin */