00001 #ifdef TEST 00002 00003 #include "headers.h" 00004 00005 const static string npPacketCommandString = "discoveryPacket"; 00006 const static string createCommandString = "create"; 00007 const static string dumpRawPacketCommandString = "dumpRaw"; 00008 const static string decodePacketCommandString = "decode"; 00009 00010 00011 NpPacketCommand::NpPacketCommand(NpPacket::NpType packetType) : Command() { 00012 m_packet = NpPacket::createPacket(packetType); 00013 } 00014 00015 00016 string 00017 NpPacketCommand::getCommandString() { 00018 return m_packet->getControlTypeString(); 00019 } 00020 00021 00022 void 00023 NpPacketCommand::getHtmlInterface(std::ostream& s) { 00024 s << "<h2>" << m_packet->getControlTypeString() << " Packet</h2>"; 00025 beginUl(s); 00026 generateHtmlSubcmd(s, showCommandString, "show"); 00027 generateHtmlSubcmd(s, dumpRawPacketCommandString, "Dump Raw Packet"); 00028 generateHtmlSubcmd(s, decodePacketCommandString, "Decode packet"); 00029 endUl(s); 00030 } 00031 00032 00033 void 00034 NpPacketCommand::run(std::ostream& s) { 00035 if (m_args[1].empty()) { 00036 getHelp(s); 00037 return; 00038 } 00039 00040 if (m_args[1] == showCommandString) { 00041 s << *m_packet; 00042 } 00043 else if (m_args[1] == dumpRawPacketCommandString) { 00044 m_packet->dumpHeader(s); 00045 m_packet->dumpData(s); 00046 } 00047 else if (m_args[1] == decodePacketCommandString) { 00048 NpPacket* decodeMe = NpPacket::decode(m_packet->getRawData(), m_packet->getPacketType()); 00049 s << "Decoded packet:\n"; 00050 s << *decodeMe; 00051 } 00052 } 00053 00054 00055 void 00056 NpPacketCommand::getHelp(std::ostream& s) { 00057 s << m_packet->getControlTypeString() << "\n" 00058 << " " << showCommandString << "\n" 00059 << " " << dumpRawPacketCommandString << "\n" 00060 << " " << decodePacketCommandString << "\n"; 00061 } 00062 00063 #endif 00064