summaryrefslogtreecommitdiff
path: root/server-tools/instance-manager/commands.h
diff options
context:
space:
mode:
authorunknown <petr@mysql.com>2004-10-26 23:22:12 +0400
committerunknown <petr@mysql.com>2004-10-26 23:22:12 +0400
commit234ca309b9e1e49b6425fbf0dfd662e7d0f7b383 (patch)
tree84047e5c9807f54931f2d0793890253e8b140755 /server-tools/instance-manager/commands.h
parenta3d9a1eb066d7cca01bef104d065864f2a7c65ec (diff)
downloadmariadb-git-234ca309b9e1e49b6425fbf0dfd662e7d0f7b383.tar.gz
Various post-review fixes
server-tools/instance-manager/buffer.cc: simplified buffer interface server-tools/instance-manager/buffer.h: simplified buffer interface server-tools/instance-manager/command.cc: Command class now uses instance_map directly server-tools/instance-manager/command.h: Made Command to use instance_map directly (not through the factory, which is not needed here in fact) server-tools/instance-manager/commands.cc: Moved mysql client/server protocol-specific functions to the commands server-tools/instance-manager/commands.h: Added a comment for Syntax_error command, fixed classes to use instance map instead of the factory server-tools/instance-manager/factory.cc: Fixed factory to give appropriate class to the commands server-tools/instance-manager/guardian.cc: Fixed guardian to delay start of new instances monitoring. Moved guardian initialization to the class from Instance map. server-tools/instance-manager/guardian.h: interface fixed server-tools/instance-manager/instance.cc: added some loging server-tools/instance-manager/instance_map.cc: All non-instance map specific functions moved from the class. Added iterator for instance_map server-tools/instance-manager/instance_map.h: All non-instance map related functions moved from the class. Added iterator for instance_map. server-tools/instance-manager/listener.cc: Added FD_CLOEXEC flag to sockets, as we don't want instances to inherit them after exec. server-tools/instance-manager/manager.cc: use guardian method moved from the instance map server-tools/instance-manager/mysql_connection.cc: cleanup server-tools/instance-manager/protocol.cc: fix according to the changes in the Buffer class
Diffstat (limited to 'server-tools/instance-manager/commands.h')
-rw-r--r--server-tools/instance-manager/commands.h23
1 files changed, 14 insertions, 9 deletions
diff --git a/server-tools/instance-manager/commands.h b/server-tools/instance-manager/commands.h
index 09df4fc9260..8b53b21bbac 100644
--- a/server-tools/instance-manager/commands.h
+++ b/server-tools/instance-manager/commands.h
@@ -27,9 +27,10 @@
class Show_instances : public Command
{
public:
- Show_instances(Command_factory *factory): Command(factory)
+ Show_instances(Instance_map *imap_arg): Command(imap_arg)
{}
+ int do_command(struct st_net *net);
int execute(struct st_net *net, ulong connection_id);
};
@@ -42,7 +43,7 @@ public:
class Flush_instances : public Command
{
public:
- Flush_instances(Command_factory *factory): Command(factory)
+ Flush_instances(Instance_map *imap_arg): Command(imap_arg)
{}
int execute(struct st_net *net, ulong connection_id);
@@ -58,8 +59,8 @@ class Show_instance_status : public Command
{
public:
- Show_instance_status(Command_factory *factory, const char *name, uint len);
-
+ Show_instance_status(Instance_map *imap_arg, const char *name, uint len);
+ int do_command(struct st_net *net, const char *instance_name);
int execute(struct st_net *net, ulong connection_id);
const char *instance_name;
};
@@ -74,9 +75,10 @@ class Show_instance_options : public Command
{
public:
- Show_instance_options(Command_factory *factory, const char *name, uint len);
+ Show_instance_options(Instance_map *imap_arg, const char *name, uint len);
int execute(struct st_net *net, ulong connection_id);
+ int do_command(struct st_net *net, const char *instance_name);
const char *instance_name;
};
@@ -89,11 +91,11 @@ public:
class Start_instance : public Command
{
public:
- Start_instance(Command_factory *factory, const char *name, uint len);
+ Start_instance(Instance_map *imap_arg, const char *name, uint len);
- Instance *instance;
int execute(struct st_net *net, ulong connection_id);
const char *instance_name;
+ Instance *instance;
};
@@ -105,7 +107,7 @@ public:
class Stop_instance : public Command
{
public:
- Stop_instance(Command_factory *factory, const char *name, uint len);
+ Stop_instance(Instance_map *imap_arg, const char *name, uint len);
Instance *instance;
int execute(struct st_net *net, ulong connection_id);
@@ -114,7 +116,10 @@ public:
/*
- Syntax error command.
+ Syntax error command. This command is issued if parser reported a syntax error.
+ We need it to distinguish the parse error and the situation when parser internal
+ error occured. E.g. parsing failed because we hadn't had enought memory. In the
+ latter case parse_command() should return an error.
*/
class Syntax_error : public Command