diff options
| -rw-r--r-- | include/aopacket.h | 3 | ||||
| -rw-r--r-- | src/aopacket.cpp | 54 |
2 files changed, 12 insertions, 45 deletions
diff --git a/include/aopacket.h b/include/aopacket.h index e6369982..6d1debad 100644 --- a/include/aopacket.h +++ b/include/aopacket.h @@ -8,8 +8,7 @@ class AOPacket { public: AOPacket(QString p_packet_string); - AOPacket(QString header, QStringList &p_contents); - ~AOPacket(); + AOPacket(QString header, QStringList &p_contents) : m_header(header), m_contents(p_contents){} QString get_header() { return m_header; } QStringList &get_contents() { return m_contents; } diff --git a/src/aopacket.cpp b/src/aopacket.cpp index 4cf43e1d..a989a3ad 100644 --- a/src/aopacket.cpp +++ b/src/aopacket.cpp @@ -4,59 +4,27 @@ AOPacket::AOPacket(QString p_packet_string) { QStringList packet_contents = p_packet_string.split("#"); - m_header = packet_contents.at(0); - - for (int n_string = 1; n_string < packet_contents.size() - 1; ++n_string) { - m_contents.append(packet_contents.at(n_string)); - } -} - -AOPacket::AOPacket(QString p_header, QStringList &p_contents) -{ - m_header = p_header; - m_contents = p_contents; + m_header = packet_contents.first(); + m_contents = QStringList(packet_contents.begin()+1, packet_contents.end()-1); // trims % } -AOPacket::~AOPacket() {} - QString AOPacket::to_string() { - QString f_string = m_header; - - for (QString i_string : m_contents) { - f_string += ("#" + i_string); - } - - f_string += "#%"; - - - return f_string; + return m_header + "#" + m_contents.join("#") + "#%"; } void AOPacket::net_encode() { - for (int n_element = 0; n_element < m_contents.size(); ++n_element) { - QString f_element = m_contents.at(n_element); - f_element.replace("#", "<num>") - .replace("%", "<percent>") - .replace("$", "<dollar>") - .replace("&", "<and>"); - - m_contents.removeAt(n_element); - m_contents.insert(n_element, f_element); - } + m_contents.replaceInStrings("#", "<num>") + .replaceInStrings("%", "<percent>") + .replaceInStrings("$", "<dollar>") + .replaceInStrings("&", "<and>"); } void AOPacket::net_decode() { - for (int n_element = 0; n_element < m_contents.size(); ++n_element) { - QString f_element = m_contents.at(n_element); - f_element.replace("<num>", "#") - .replace("<percent>", "%") - .replace("<dollar>", "$") - .replace("<and>", "&"); - - m_contents.removeAt(n_element); - m_contents.insert(n_element, f_element); - } + m_contents.replaceInStrings("<num>", "#") + .replaceInStrings("<percent>", "%") + .replaceInStrings("<dollar>", "$") + .replaceInStrings("<and>", "&"); } |
