89 lines
2.0 KiB
C++
89 lines
2.0 KiB
C++
#include <yproxy/NNTPCommands.hpp>
|
|
|
|
NNTPCommands *NNTPCommands::smInstance=0;
|
|
|
|
NNTPCommands::NNTPCommand NNTPCommands::interpretCommand(const String &string)
|
|
{
|
|
for(int index=0;index<mNNTPCmds.size();index++)
|
|
{
|
|
if(!string.strncmp(mNNTPCmds[index]))return (NNTPCommand)index;
|
|
}
|
|
return InvalidCommand;
|
|
}
|
|
|
|
String NNTPCommands::toString(NNTPCommand command)
|
|
{
|
|
switch(command)
|
|
{
|
|
case XOver :
|
|
return "XOver";
|
|
case Article :
|
|
return "Article";
|
|
case Body :
|
|
return "Body";
|
|
case Group :
|
|
return "Group";
|
|
case Head :
|
|
return "Head";
|
|
case Help :
|
|
return "Help";
|
|
case IHave :
|
|
return "IHave";
|
|
case Last :
|
|
return "Last";
|
|
case List :
|
|
return "List";
|
|
case NewGroups :
|
|
return "NewGroups";
|
|
case NewNews :
|
|
return "NewNews";
|
|
case Next :
|
|
return "Next";
|
|
case Post :
|
|
return "Post";
|
|
case Quit :
|
|
return "Quit";
|
|
case Slave :
|
|
return "Slave";
|
|
case Stat :
|
|
return "Stat";
|
|
case ListGroup :
|
|
return "ListGroup";
|
|
case AuthInfoUser :
|
|
return "AuthInfoUser";
|
|
case AuthInfoPass :
|
|
return "AuthInfoPass";
|
|
case ModeReader :
|
|
return "ModeReader";
|
|
case InvalidCommand :
|
|
default :
|
|
return "InvalidCommand";
|
|
}
|
|
}
|
|
|
|
void NNTPCommands::buildCommands(void)
|
|
{
|
|
mNNTPCmds.insert(&String("ARTICLE"));
|
|
mNNTPCmds.insert(&String("BODY"));
|
|
mNNTPCmds.insert(&String("GROUP"));
|
|
mNNTPCmds.insert(&String("HEAD"));
|
|
mNNTPCmds.insert(&String("HELP"));
|
|
mNNTPCmds.insert(&String("IHAVE"));
|
|
mNNTPCmds.insert(&String("LAST"));
|
|
mNNTPCmds.insert(&String("LIST"));
|
|
mNNTPCmds.insert(&String("NEWGROUPS"));
|
|
mNNTPCmds.insert(&String("NEWNEWS"));
|
|
mNNTPCmds.insert(&String("NEXT"));
|
|
mNNTPCmds.insert(&String("POST"));
|
|
mNNTPCmds.insert(&String("QUIT"));
|
|
mNNTPCmds.insert(&String("SLAVE"));
|
|
mNNTPCmds.insert(&String("STAT"));
|
|
mNNTPCmds.insert(&String("LISTGROUP"));
|
|
mNNTPCmds.insert(&String("AUTHINFO USER"));
|
|
mNNTPCmds.insert(&String("AUTHINFO PASS"));
|
|
mNNTPCmds.insert(&String("AUTHINFO"));
|
|
mNNTPCmds.insert(&String("MODE READER"));
|
|
mNNTPCmds.insert(&String("XOVER"));
|
|
mNNTPCmds.insert(&String("INVALID"));
|
|
}
|