diff --git a/include/transport/Frontend.h b/include/transport/Frontend.h index fa3d0b7a..0de40c12 100644 --- a/include/transport/Frontend.h +++ b/include/transport/Frontend.h @@ -96,6 +96,8 @@ class Frontend { virtual std::string getRegistrationFields() { return "Jabber ID\n3rd-party network username\n3rd-party network password"; } virtual bool handleAdminMessage(Swift::Message::ref /*message*/) { return false; } + virtual bool isRawXMLEnabled() { return false; } + boost::signal onVCardRequired; boost::signal vcard)> onVCardUpdated; boost::signal onBuddyUpdated; diff --git a/include/transport/Transport.h b/include/transport/Transport.h index c72094e8..4a190a8d 100644 --- a/include/transport/Transport.h +++ b/include/transport/Transport.h @@ -101,10 +101,6 @@ namespace Transport { Config *getConfig() { return m_config; } - bool isRawXMLEnabled() { - return m_rawXML; - } - /// It's emitted only for presences addressed to transport itself /// (for example to="j2j.domain.tld") and for presences comming to /// MUC (for example to="#chat%irc.freenode.org@irc.domain.tld") @@ -142,7 +138,6 @@ namespace Transport { Swift::JID m_jid; Factory *m_factory; Swift::EventLoop *m_loop; - bool m_rawXML; Frontend *m_frontend; friend class User; diff --git a/libtransport/LocalBuddy.cpp b/libtransport/LocalBuddy.cpp index 7fa2a471..8a0e0aef 100644 --- a/libtransport/LocalBuddy.cpp +++ b/libtransport/LocalBuddy.cpp @@ -22,6 +22,7 @@ #include "transport/User.h" #include "transport/RosterManager.h" #include "transport/Transport.h" +#include "transport/Frontend.h" namespace Transport { @@ -101,7 +102,7 @@ void LocalBuddy::setGroups(const std::vector &groups) { } bool LocalBuddy::getStatus(Swift::StatusShow &status, std::string &statusMessage) { - if (getRosterManager()->getUser()->getComponent()->isRawXMLEnabled()) { + if (getRosterManager()->getUser()->getComponent()->getFrontend()->isRawXMLEnabled()) { return false; } status = m_status; diff --git a/libtransport/Transport.cpp b/libtransport/Transport.cpp index 5e8e70f5..084aaeba 100644 --- a/libtransport/Transport.cpp +++ b/libtransport/Transport.cpp @@ -43,7 +43,6 @@ Component::Component(Frontend *frontend, Swift::EventLoop *loop, Swift::NetworkF m_factory = factory; m_loop = loop; m_userRegistry = userRegistry; - m_rawXML = false; m_jid = Swift::JID(CONFIG_STRING(m_config, "service.jid")); m_factories = factories; diff --git a/tests/libtransport/networkpluginserver.cpp b/tests/libtransport/networkpluginserver.cpp index a6c34ddc..d9cd4f0f 100644 --- a/tests/libtransport/networkpluginserver.cpp +++ b/tests/libtransport/networkpluginserver.cpp @@ -42,8 +42,8 @@ class NetworkPluginServerTest : public CPPUNIT_NS :: TestFixture, public BasicTe CPPUNIT_TEST(handleBuddyChangedPayloadUserContactInRoster); CPPUNIT_TEST(handleMessageHeadline); CPPUNIT_TEST(handleConvMessageAckPayload); -// CPPUNIT_TEST(handleRawXML); -// CPPUNIT_TEST(handleRawXMLSplit); + CPPUNIT_TEST(handleRawXML); + CPPUNIT_TEST(handleRawXMLSplit); CPPUNIT_TEST(benchmarkHandleBuddyChangedPayload); CPPUNIT_TEST(benchmarkSendUnavailablePresence);