00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #include <config.h>
00032 #include <drizzled/plugin.h>
00033 #include <drizzled/statistics_variables.h>
00034 #include <drizzled/session.h>
00035
00036 #include "scoreboard_slot.h"
00037
00038 using namespace std;
00039
00040 ScoreboardSlot::ScoreboardSlot()
00041 :
00042 in_use(false),
00043 session_id(0)
00044 {
00045 user_commands= new UserCommands();
00046 status_vars= new StatusVars();
00047 }
00048
00049 ScoreboardSlot::~ScoreboardSlot()
00050 {
00051 delete user_commands;
00052 delete status_vars;
00053 }
00054
00055 ScoreboardSlot::ScoreboardSlot(const ScoreboardSlot &scoreboard_slot)
00056 {
00057 user_commands= new UserCommands(*scoreboard_slot.user_commands);
00058 status_vars= new StatusVars(*scoreboard_slot.status_vars);
00059 user.assign(scoreboard_slot.user);
00060 ip.assign(scoreboard_slot.ip);
00061 in_use= scoreboard_slot.in_use;
00062 session_id= scoreboard_slot.session_id;
00063 }
00064
00065 UserCommands* ScoreboardSlot::getUserCommands()
00066 {
00067 return user_commands;
00068 }
00069
00070 StatusVars* ScoreboardSlot::getStatusVars()
00071 {
00072 return status_vars;
00073 }
00074
00075 void ScoreboardSlot::setSessionId(drizzled::session_id_t in_session_id)
00076 {
00077 session_id= in_session_id;
00078 }
00079
00080 drizzled::session_id_t ScoreboardSlot::getSessionId()
00081 {
00082 return session_id;
00083 }
00084
00085 void ScoreboardSlot::setInUse(bool in_in_use)
00086 {
00087 in_use= in_in_use;
00088 }
00089
00090 bool ScoreboardSlot::isInUse()
00091 {
00092 return in_use;
00093 }
00094
00095 void ScoreboardSlot::setUser(string in_user)
00096 {
00097 user.assign(in_user);
00098 }
00099
00100 const string& ScoreboardSlot::getUser()
00101 {
00102 return user;
00103 }
00104
00105 void ScoreboardSlot::setIp(string in_ip)
00106 {
00107 ip.assign(in_ip);
00108 }
00109
00110 const string& ScoreboardSlot::getIp()
00111 {
00112 return ip;
00113 }
00114
00115 void ScoreboardSlot::merge(ScoreboardSlot *score_board_slot)
00116 {
00117 user_commands->merge(score_board_slot->getUserCommands());
00118 status_vars->merge(score_board_slot->getStatusVars());
00119 }
00120
00121 void ScoreboardSlot::reset()
00122 {
00123 in_use= false;
00124 session_id= 0;
00125 user_commands->reset();
00126 status_vars->reset();
00127 }