diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-12-19 14:10:39 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-12-19 17:17:45 (GMT) |
commit | d67ecb18c1178ecf69e6cb5e8c8ee1fecee35e4c (patch) | |
tree | 5f05b975ae39b2318d85f9ed673e2434f2916981 /Swiften/StreamStack/XMPPLayer.cpp | |
parent | e8b2e33a6fc569af116a32ebb5e441728e390c8f (diff) | |
download | swift-contrib-d67ecb18c1178ecf69e6cb5e8c8ee1fecee35e4c.zip swift-contrib-d67ecb18c1178ecf69e6cb5e8c8ee1fecee35e4c.tar.bz2 |
Refactoring streamstack to not use signal/slots.
Diffstat (limited to 'Swiften/StreamStack/XMPPLayer.cpp')
-rw-r--r-- | Swiften/StreamStack/XMPPLayer.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/Swiften/StreamStack/XMPPLayer.cpp b/Swiften/StreamStack/XMPPLayer.cpp index d4e329b..3ecda95 100644 --- a/Swiften/StreamStack/XMPPLayer.cpp +++ b/Swiften/StreamStack/XMPPLayer.cpp @@ -29,22 +29,27 @@ XMPPLayer::~XMPPLayer() { } void XMPPLayer::writeHeader(const ProtocolHeader& header) { - onWriteData(ByteArray(xmppSerializer_->serializeHeader(header))); + writeDataInternal(ByteArray(xmppSerializer_->serializeHeader(header))); } void XMPPLayer::writeFooter() { - onWriteData(ByteArray(xmppSerializer_->serializeFooter())); + writeDataInternal(ByteArray(xmppSerializer_->serializeFooter())); } void XMPPLayer::writeElement(boost::shared_ptr<Element> element) { - onWriteData(ByteArray(xmppSerializer_->serializeElement(element))); + writeDataInternal(ByteArray(xmppSerializer_->serializeElement(element))); } void XMPPLayer::writeData(const String& data) { - onWriteData(ByteArray(data)); + writeDataInternal(ByteArray(data)); } -void XMPPLayer::parseData(ByteArray data) { +void XMPPLayer::writeDataInternal(const ByteArray& data) { + onWriteData(data); + writeDataToChildLayer(data); +} + +void XMPPLayer::handleDataRead(const ByteArray& data) { onDataRead(data); inParser_ = true; if (!xmppParser_->parse(String(data.getData(), data.getSize()))) { |