summaryrefslogtreecommitdiff
path: root/server-tools/instance-manager/instance_map.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/instance_map.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/instance_map.h')
-rw-r--r--server-tools/instance-manager/instance_map.h25
1 files changed, 21 insertions, 4 deletions
diff --git a/server-tools/instance-manager/instance_map.h b/server-tools/instance-manager/instance_map.h
index 965261f2920..193376c6f23 100644
--- a/server-tools/instance-manager/instance_map.h
+++ b/server-tools/instance-manager/instance_map.h
@@ -43,12 +43,11 @@ public:
Instance *find(const char *name, uint name_len);
Instance *find(uint instance_number);
- int show_instances(struct st_net *net);
- int show_instance_status(struct st_net *net, const char *instance_name);
- int show_instance_options(struct st_net *net, const char *instance_name);
int flush_instances();
- int init_guardian();
int cleanup();
+ int lock();
+ int unlock();
+ Instance *get_instance(uint instance_number);
Instance_map();
~Instance_map();
@@ -73,4 +72,22 @@ private:
HASH hash;
};
+
+/* Instance_map iterator */
+
+class Imap_iterator
+{
+private:
+ uint current_instance;
+ Instance_map *instance_map;
+public:
+ Imap_iterator(Instance_map *instance_map_arg) :
+ instance_map(instance_map_arg), current_instance(0)
+ {}
+
+ void go_to_first();
+ Instance *next();
+};
+
+
#endif /* INCLUDES_MYSQL_INSTANCE_MANAGER_INSTANCE_MAP_H */