removed more duplicated commands for management server

parent 5712bc55
...@@ -110,7 +110,6 @@ public: ...@@ -110,7 +110,6 @@ public:
void executeRestart(int processId, const char* parameters, bool all); void executeRestart(int processId, const char* parameters, bool all);
void executeLogLevel(int processId, const char* parameters, bool all); void executeLogLevel(int processId, const char* parameters, bool all);
void executeError(int processId, const char* parameters, bool all); void executeError(int processId, const char* parameters, bool all);
void executeTrace(int processId, const char* parameters, bool all);
void executeLog(int processId, const char* parameters, bool all); void executeLog(int processId, const char* parameters, bool all);
void executeLogIn(int processId, const char* parameters, bool all); void executeLogIn(int processId, const char* parameters, bool all);
void executeLogOut(int processId, const char* parameters, bool all); void executeLogOut(int processId, const char* parameters, bool all);
...@@ -729,7 +728,6 @@ static const CommandInterpreter::CommandFunctionPair commands[] = { ...@@ -729,7 +728,6 @@ static const CommandInterpreter::CommandFunctionPair commands[] = {
#ifdef ERROR_INSERT #ifdef ERROR_INSERT
,{ "ERROR", &CommandInterpreter::executeError } ,{ "ERROR", &CommandInterpreter::executeError }
#endif #endif
,{ "TRACE", &CommandInterpreter::executeTrace }
,{ "LOG", &CommandInterpreter::executeLog } ,{ "LOG", &CommandInterpreter::executeLog }
,{ "LOGIN", &CommandInterpreter::executeLogIn } ,{ "LOGIN", &CommandInterpreter::executeLogIn }
,{ "LOGOUT", &CommandInterpreter::executeLogOut } ,{ "LOGOUT", &CommandInterpreter::executeLogOut }
...@@ -1676,42 +1674,6 @@ void CommandInterpreter::executeError(int processId, ...@@ -1676,42 +1674,6 @@ void CommandInterpreter::executeError(int processId,
ndb_mgm_insert_error(m_mgmsrv, processId, errorNo, NULL); ndb_mgm_insert_error(m_mgmsrv, processId, errorNo, NULL);
} }
//*****************************************************************************
//*****************************************************************************
void
CommandInterpreter::executeTrace(int /*processId*/,
const char* /*parameters*/, bool /*all*/)
{
#if 0
if (emptyString(parameters)) {
ndbout << "Missing trace number." << endl;
return;
}
char* newpar = my_strdup(parameters,MYF(MY_WME));
My_auto_ptr<char> ap1(newpar);
char* firstParameter = strtok(newpar, " ");
int traceNo;
if (! convert(firstParameter, traceNo)) {
ndbout << "Expected an integer." << endl;
return;
}
char* allAfterFirstParameter = strtok(NULL, "\0");
if (! emptyString(allAfterFirstParameter)) {
ndbout << "Nothing expected after trace number." << endl;
return;
}
int result = _mgmtSrvr.setTraceNo(processId, traceNo);
if (result != 0) {
ndbout << get_error_text(result) << endl;
}
#endif
}
//***************************************************************************** //*****************************************************************************
//***************************************************************************** //*****************************************************************************
......
This diff is collapsed.
...@@ -17,52 +17,21 @@ ...@@ -17,52 +17,21 @@
#ifndef CommandInterpreter_H #ifndef CommandInterpreter_H
#define CommandInterpreter_H #define CommandInterpreter_H
//*****************************************************************************
// Author: Peter Lind
//*****************************************************************************
#include <ndb_global.h> #include <ndb_global.h>
#include <Vector.hpp> #include <Vector.hpp>
#include <BaseString.hpp> #include <BaseString.hpp>
class MgmtSrvr; class MgmtSrvr;
/**
* @class CommandInterpreter
* @brief Reads command line in management client
*
* This class has one public method which reads a command line
* from a stream. It then interpret that commmand line and calls a suitable
* method in the MgmtSrvr class which executes the command.
*
* For command syntax, see the HELP command.
*/
class CommandInterpreter { class CommandInterpreter {
public: public:
/**
* Constructor
* @param mgmtSrvr: Management server to use when executing commands
*/
CommandInterpreter(MgmtSrvr& mgmtSrvr); CommandInterpreter(MgmtSrvr& mgmtSrvr);
/**
* Reads one line from the stream, parse the line to find
* a command and then calls a suitable method which executes
* the command.
*
* @return true until quit/bye/exit has been typed
*/
int readAndExecute(); int readAndExecute();
private: private:
char m_err_str[1024]; char m_err_str[1024];
const char *get_error_text(int err_no); const char *get_error_text(int err_no);
/**
* Read a string, and return a pointer to it.
*
* @return NULL on EOF.
*/
char *readline_gets () char *readline_gets ()
{ {
static char linebuffer[254]; static char linebuffer[254];
...@@ -89,61 +58,15 @@ private: ...@@ -89,61 +58,15 @@ private:
return (line_read); return (line_read);
} }
/**
* Analyse the command line, after the first token.
*
* @param processId: DB process id to send command to or -1 if
* command will be sent to all DB processes.
* @param allAfterFirstToken: What the client gave after the
* first token on the command line
*/
void analyseAfterFirstToken(int processId, char* allAfterFirstTokenCstr); void analyseAfterFirstToken(int processId, char* allAfterFirstTokenCstr);
/**
* Parse the block specification part of the LOG* commands,
* things after LOG*: [BLOCK = {ALL|<blockName>+}]
*
* @param allAfterLog: What the client gave after the second token
* (LOG*) on the command line
* @param blocks, OUT: ALL or name of all the blocks
* @return: true if correct syntax, otherwise false
*/
bool parseBlockSpecification(const char* allAfterLog, bool parseBlockSpecification(const char* allAfterLog,
Vector<BaseString>& blocks); Vector<BaseString>& blocks);
/**
* A bunch of execute functions: Executes one of the commands
*
* @param processId: DB process id to send command to
* @param parameters: What the client gave after the command name
* on the command line.
* For example if complete input from user is: "1 LOGLEVEL 22" then the
* parameters argument is the string with everything after LOGLEVEL, in this
* case "22". Each function is responsible to check the parameters argument.
*/
void executeHelp(char* parameters);
void executeShow(char* parameters);
void executeRun(char* parameters);
void executeInfo(char* parameters);
public: public:
void executeStop(int processId, const char* parameters, bool all);
void executeStart(int processId, const char* parameters, bool all);
void executeRestart(int processId, const char* parameters, bool all);
void executeError(int processId, const char* parameters, bool all);
void executeTrace(int processId, const char* parameters, bool all);
void executeLog(int processId, const char* parameters, bool all);
void executeLogIn(int processId, const char* parameters, bool all); void executeLogIn(int processId, const char* parameters, bool all);
void executeLogOut(int processId, const char* parameters, bool all); void executeLogOut(int processId, const char* parameters, bool all);
void executeLogOff(int processId, const char* parameters, bool all); void executeLogOff(int processId, const char* parameters, bool all);
void executeTestOn(int processId, const char* parameters, bool all);
void executeTestOff(int processId, const char* parameters, bool all);
void executeStatus(int processId, const char* parameters, bool all);
void executeDumpState(int processId, const char* parameters, bool all);
/**
* A execute function definition
*/
public: public:
typedef void (CommandInterpreter::* ExecuteFunction)(int processId, typedef void (CommandInterpreter::* ExecuteFunction)(int processId,
const char * param, const char * param,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment