From 8fd96027e50601639dfb8e5bb94a52befd07bbd3 Mon Sep 17 00:00:00 2001 From: lganzzzo Date: Tue, 10 Dec 2019 16:22:52 +0200 Subject: [PATCH] Stream Context. Input/Output stream return Context by reference. --- src/oatpp/core/data/stream/BufferStream.cpp | 12 ++++++---- src/oatpp/core/data/stream/BufferStream.hpp | 8 +++++-- src/oatpp/core/data/stream/ChunkedBuffer.cpp | 8 ++++--- src/oatpp/core/data/stream/ChunkedBuffer.hpp | 6 +++-- src/oatpp/core/data/stream/FileStream.cpp | 8 +++---- src/oatpp/core/data/stream/FileStream.hpp | 4 ++-- src/oatpp/core/data/stream/Stream.cpp | 24 +++++++++---------- src/oatpp/core/data/stream/Stream.hpp | 16 +++++++++---- .../core/data/stream/StreamBufferedProxy.cpp | 4 ++-- .../core/data/stream/StreamBufferedProxy.hpp | 4 ++-- src/oatpp/network/Connection.cpp | 8 +++---- src/oatpp/network/Connection.hpp | 4 ++-- src/oatpp/network/ConnectionPool.cpp | 4 ++-- src/oatpp/network/ConnectionPool.hpp | 4 ++-- .../server/SimpleTCPConnectionProvider.cpp | 8 +++---- .../server/SimpleTCPConnectionProvider.hpp | 4 ++-- src/oatpp/network/virtual_/Pipe.cpp | 12 ++++++---- src/oatpp/network/virtual_/Pipe.hpp | 10 ++++++-- src/oatpp/network/virtual_/Socket.cpp | 4 ++-- src/oatpp/network/virtual_/Socket.hpp | 4 ++-- src/oatpp/parser/json/Beautifier.cpp | 2 +- src/oatpp/parser/json/Beautifier.hpp | 2 +- test/oatpp/network/ConnectionPoolTest.cpp | 4 ++-- 23 files changed, 97 insertions(+), 67 deletions(-) diff --git a/src/oatpp/core/data/stream/BufferStream.cpp b/src/oatpp/core/data/stream/BufferStream.cpp index e9679ecf..b8c533a4 100644 --- a/src/oatpp/core/data/stream/BufferStream.cpp +++ b/src/oatpp/core/data/stream/BufferStream.cpp @@ -29,6 +29,8 @@ namespace oatpp { namespace data{ namespace stream { //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // BufferOutputStream +data::stream::DefaultInitializedContext BufferOutputStream::DEFAULT_CONTEXT(data::stream::StreamType::STREAM_INFINITE); + BufferOutputStream::BufferOutputStream(v_buff_size initialCapacity, v_buff_size growBytes) : m_data(new v_char8[initialCapacity]) , m_capacity(initialCapacity) @@ -60,8 +62,8 @@ IOMode BufferOutputStream::getOutputStreamIOMode() { return m_ioMode; } -Context* BufferOutputStream::getOutputStreamContext() { - return nullptr; +Context& BufferOutputStream::getOutputStreamContext() { + return DEFAULT_CONTEXT; } void BufferOutputStream::reserveBytesUpfront(v_buff_size count) { @@ -159,6 +161,8 @@ oatpp::async::CoroutineStarter BufferOutputStream::flushToStreamAsync(const std: //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // BufferInputStream +data::stream::DefaultInitializedContext BufferInputStream::DEFAULT_CONTEXT(data::stream::StreamType::STREAM_FINITE); + BufferInputStream::BufferInputStream(const std::shared_ptr& memoryHandle, p_char8 data, v_buff_size size) : m_memoryHandle(memoryHandle) , m_data(data) @@ -219,8 +223,8 @@ IOMode BufferInputStream::getInputStreamIOMode() { return m_ioMode; } -Context* BufferInputStream::getInputStreamContext() { - return nullptr; +Context& BufferInputStream::getInputStreamContext() { + return DEFAULT_CONTEXT; } std::shared_ptr BufferInputStream::getDataMemoryHandle() { diff --git a/src/oatpp/core/data/stream/BufferStream.hpp b/src/oatpp/core/data/stream/BufferStream.hpp index c6aa6a61..e42e991b 100644 --- a/src/oatpp/core/data/stream/BufferStream.hpp +++ b/src/oatpp/core/data/stream/BufferStream.hpp @@ -33,6 +33,8 @@ namespace oatpp { namespace data{ namespace stream { * BufferOutputStream */ class BufferOutputStream : public ConsistentOutputStream { +public: + static data::stream::DefaultInitializedContext DEFAULT_CONTEXT; private: p_char8 m_data; v_buff_size m_capacity; @@ -76,7 +78,7 @@ public: * Get stream context. * @return */ - Context* getOutputStreamContext() override; + Context& getOutputStreamContext() override; /** * Reserve bytes for future writes. @@ -143,6 +145,8 @@ public: * BufferInputStream */ class BufferInputStream : public InputStream { +public: + static data::stream::DefaultInitializedContext DEFAULT_CONTEXT; private: std::shared_ptr m_memoryHandle; p_char8 m_data; @@ -213,7 +217,7 @@ public: * Get stream context. * @return */ - Context* getInputStreamContext() override; + Context& getInputStreamContext() override; /** * Get data memory handle. diff --git a/src/oatpp/core/data/stream/ChunkedBuffer.cpp b/src/oatpp/core/data/stream/ChunkedBuffer.cpp index c11a8ca4..506206b1 100644 --- a/src/oatpp/core/data/stream/ChunkedBuffer.cpp +++ b/src/oatpp/core/data/stream/ChunkedBuffer.cpp @@ -25,7 +25,9 @@ #include "ChunkedBuffer.hpp" namespace oatpp { namespace data{ namespace stream { - + +data::stream::DefaultInitializedContext ChunkedBuffer::DEFAULT_CONTEXT(data::stream::StreamType::STREAM_INFINITE); + const char* ChunkedBuffer::ERROR_ASYNC_FAILED_TO_WRITE_ALL_DATA = "ERROR_ASYNC_FAILED_TO_WRITE_ALL_DATA"; const char* const ChunkedBuffer::CHUNK_POOL_NAME = "ChunkedBuffer_Chunk_Pool"; @@ -156,8 +158,8 @@ IOMode ChunkedBuffer::getOutputStreamIOMode() { return m_ioMode; } -Context* ChunkedBuffer::getOutputStreamContext() { - return nullptr; +Context& ChunkedBuffer::getOutputStreamContext() { + return DEFAULT_CONTEXT; } data::v_io_size ChunkedBuffer::readSubstring(void *buffer, diff --git a/src/oatpp/core/data/stream/ChunkedBuffer.hpp b/src/oatpp/core/data/stream/ChunkedBuffer.hpp index 6e854e5f..57410aa3 100644 --- a/src/oatpp/core/data/stream/ChunkedBuffer.hpp +++ b/src/oatpp/core/data/stream/ChunkedBuffer.hpp @@ -36,6 +36,8 @@ namespace oatpp { namespace data{ namespace stream { * Buffer wich can grow by chunks and implements &id:oatpp::data::stream::ConsistentOutputStream; interface. */ class ChunkedBuffer : public oatpp::base::Countable, public ConsistentOutputStream, public std::enable_shared_from_this { +public: + static data::stream::DefaultInitializedContext DEFAULT_CONTEXT; public: static const char* ERROR_ASYNC_FAILED_TO_WRITE_ALL_DATA; public: @@ -179,9 +181,9 @@ public: /** * Get stream context. - * @return - `nullptr.` + * @return - &id:oatpp::data::stream::Context;. */ - Context* getOutputStreamContext() override; + Context& getOutputStreamContext() override; /** * Read part of ChunkedBuffer to buffer. diff --git a/src/oatpp/core/data/stream/FileStream.cpp b/src/oatpp/core/data/stream/FileStream.cpp index c7bc8ccb..c89d74d7 100644 --- a/src/oatpp/core/data/stream/FileStream.cpp +++ b/src/oatpp/core/data/stream/FileStream.cpp @@ -85,8 +85,8 @@ IOMode FileInputStream::getInputStreamIOMode() { return m_ioMode; } -Context* FileInputStream::getInputStreamContext() { - return &DEFAULT_CONTEXT; +Context& FileInputStream::getInputStreamContext() { + return DEFAULT_CONTEXT; } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -148,8 +148,8 @@ IOMode FileOutputStream::getOutputStreamIOMode() { return m_ioMode; } -Context* FileOutputStream::getOutputStreamContext() { - return &DEFAULT_CONTEXT; +Context& FileOutputStream::getOutputStreamContext() { + return DEFAULT_CONTEXT; } }}} diff --git a/src/oatpp/core/data/stream/FileStream.hpp b/src/oatpp/core/data/stream/FileStream.hpp index 59553fda..c70aa2e0 100644 --- a/src/oatpp/core/data/stream/FileStream.hpp +++ b/src/oatpp/core/data/stream/FileStream.hpp @@ -101,7 +101,7 @@ public: * Get stream context. * @return */ - Context* getInputStreamContext() override; + Context& getInputStreamContext() override; }; @@ -176,7 +176,7 @@ public: * Get stream context. * @return */ - Context* getOutputStreamContext() override; + Context& getOutputStreamContext() override; }; diff --git a/src/oatpp/core/data/stream/Stream.cpp b/src/oatpp/core/data/stream/Stream.cpp index 5ee9ac47..19964607 100644 --- a/src/oatpp/core/data/stream/Stream.cpp +++ b/src/oatpp/core/data/stream/Stream.cpp @@ -75,14 +75,14 @@ StreamType DefaultInitializedContext::getStreamType() const { void IOStream::initContexts() { - auto* inStreamContext = getInputStreamContext(); - if (inStreamContext && !inStreamContext->isInitialized()) { - inStreamContext->init(); + auto& inStreamContext = getInputStreamContext(); + if (!inStreamContext.isInitialized()) { + inStreamContext.init(); } - auto* outStreamContext = getOutputStreamContext(); - if(outStreamContext && outStreamContext != inStreamContext && !outStreamContext->isInitialized()) { - outStreamContext->init(); + auto& outStreamContext = getOutputStreamContext(); + if(outStreamContext != inStreamContext && !outStreamContext.isInitialized()) { + outStreamContext.init(); } } @@ -94,14 +94,14 @@ async::CoroutineStarter IOStream::initContextsAsync() { async::CoroutineStarter starter(nullptr); - auto* inStreamContext = getInputStreamContext(); - if (inStreamContext && !inStreamContext->isInitialized()) { - starter.next(inStreamContext->initAsync()); + auto& inStreamContext = getInputStreamContext(); + if (!inStreamContext.isInitialized()) { + starter.next(inStreamContext.initAsync()); } - auto* outStreamContext = getOutputStreamContext(); - if(outStreamContext && outStreamContext != inStreamContext && !outStreamContext->isInitialized()) { - starter.next(outStreamContext->initAsync()); + auto& outStreamContext = getOutputStreamContext(); + if(outStreamContext != inStreamContext && !outStreamContext.isInitialized()) { + starter.next(outStreamContext.initAsync()); } return starter; diff --git a/src/oatpp/core/data/stream/Stream.hpp b/src/oatpp/core/data/stream/Stream.hpp index 8cd45d58..4a73af26 100644 --- a/src/oatpp/core/data/stream/Stream.hpp +++ b/src/oatpp/core/data/stream/Stream.hpp @@ -110,6 +110,14 @@ public: */ const Properties& getProperties() const; + inline bool operator == (const Context& other){ + return this == &other; + } + + inline bool operator != (const Context& other){ + return this != &other; + } + }; /** @@ -222,7 +230,7 @@ public: * Get stream context. Can be `null`. * @return - pointer to &l:Context; or `nullptr`. */ - virtual Context* getOutputStreamContext() = 0; + virtual Context& getOutputStreamContext() = 0; /** * Same as `write((p_char8)data, std::strlen(data));`. @@ -298,7 +306,7 @@ public: * Get stream context. Can be `null`. * @return - pointer to &l:Context; or `nullptr`. */ - virtual Context* getInputStreamContext() = 0; + virtual Context& getInputStreamContext() = 0; }; @@ -364,7 +372,7 @@ public: return m_outputStream->getOutputStreamIOMode(); } - Context* getOutputStreamContext() override { + Context& getOutputStreamContext() override { return m_outputStream->getOutputStreamContext(); } @@ -376,7 +384,7 @@ public: return m_inputStream->getInputStreamIOMode(); } - Context* getInputStreamContext() override { + Context& getInputStreamContext() override { return m_inputStream->getInputStreamContext(); } diff --git a/src/oatpp/core/data/stream/StreamBufferedProxy.cpp b/src/oatpp/core/data/stream/StreamBufferedProxy.cpp index a4f2d53c..f69ceed5 100644 --- a/src/oatpp/core/data/stream/StreamBufferedProxy.cpp +++ b/src/oatpp/core/data/stream/StreamBufferedProxy.cpp @@ -53,7 +53,7 @@ oatpp::data::stream::IOMode OutputStreamBufferedProxy::getOutputStreamIOMode() { return m_outputStream->getOutputStreamIOMode(); } -Context* OutputStreamBufferedProxy::getOutputStreamContext() { +Context& OutputStreamBufferedProxy::getOutputStreamContext() { return m_outputStream->getOutputStreamContext(); } @@ -112,7 +112,7 @@ oatpp::data::stream::IOMode InputStreamBufferedProxy::getInputStreamIOMode() { return m_inputStream->getInputStreamIOMode(); } -Context* InputStreamBufferedProxy::getInputStreamContext() { +Context& InputStreamBufferedProxy::getInputStreamContext() { return m_inputStream->getInputStreamContext(); } diff --git a/src/oatpp/core/data/stream/StreamBufferedProxy.hpp b/src/oatpp/core/data/stream/StreamBufferedProxy.hpp index 82da7210..062185ec 100644 --- a/src/oatpp/core/data/stream/StreamBufferedProxy.hpp +++ b/src/oatpp/core/data/stream/StreamBufferedProxy.hpp @@ -73,7 +73,7 @@ public: * Get context of the underlying stream. * @return */ - Context* getOutputStreamContext() override; + Context& getOutputStreamContext() override; data::v_io_size flush(); oatpp::async::CoroutineStarter flushAsync(); @@ -143,7 +143,7 @@ public: * Get context of the underlying stream. * @return */ - Context* getInputStreamContext() override; + Context& getInputStreamContext() override; void setBufferPosition(data::v_io_size readPosition, data::v_io_size writePosition, bool canRead) { m_buffer.setBufferPosition(readPosition, writePosition, canRead); diff --git a/src/oatpp/network/Connection.cpp b/src/oatpp/network/Connection.cpp index 4611470c..2b670160 100644 --- a/src/oatpp/network/Connection.cpp +++ b/src/oatpp/network/Connection.cpp @@ -270,8 +270,8 @@ oatpp::data::stream::IOMode Connection::getOutputStreamIOMode() { return getStreamIOMode(); } -oatpp::data::stream::Context* Connection::getOutputStreamContext() { - return &DEFAULT_CONTEXT; +oatpp::data::stream::Context& Connection::getOutputStreamContext() { + return DEFAULT_CONTEXT; } void Connection::setInputStreamIOMode(oatpp::data::stream::IOMode ioMode) { @@ -282,8 +282,8 @@ oatpp::data::stream::IOMode Connection::getInputStreamIOMode() { return getStreamIOMode(); } -oatpp::data::stream::Context* Connection::getInputStreamContext() { - return &DEFAULT_CONTEXT; +oatpp::data::stream::Context& Connection::getInputStreamContext() { + return DEFAULT_CONTEXT; } void Connection::close(){ diff --git a/src/oatpp/network/Connection.hpp b/src/oatpp/network/Connection.hpp index 613fa103..a893412c 100644 --- a/src/oatpp/network/Connection.hpp +++ b/src/oatpp/network/Connection.hpp @@ -106,7 +106,7 @@ public: * Get output stream context. * @return - &id:oatpp::data::stream::Context;. */ - oatpp::data::stream::Context* getOutputStreamContext() override; + oatpp::data::stream::Context& getOutputStreamContext() override; /** * Set InputStream I/O mode. @@ -124,7 +124,7 @@ public: * Get input stream context.
* @return - &id:oatpp::data::stream::Context;. */ - oatpp::data::stream::Context* getInputStreamContext() override; + oatpp::data::stream::Context& getInputStreamContext() override; /** * Close socket handle. diff --git a/src/oatpp/network/ConnectionPool.cpp b/src/oatpp/network/ConnectionPool.cpp index 4d735324..b42624a6 100644 --- a/src/oatpp/network/ConnectionPool.cpp +++ b/src/oatpp/network/ConnectionPool.cpp @@ -96,11 +96,11 @@ oatpp::data::stream::IOMode ConnectionPool::ConnectionWrapper::getInputStreamIOM return m_connection->getInputStreamIOMode(); } -oatpp::data::stream::Context* ConnectionPool::ConnectionWrapper::getOutputStreamContext() { +oatpp::data::stream::Context& ConnectionPool::ConnectionWrapper::getOutputStreamContext() { return m_connection->getOutputStreamContext(); } -oatpp::data::stream::Context* ConnectionPool::ConnectionWrapper::getInputStreamContext() { +oatpp::data::stream::Context& ConnectionPool::ConnectionWrapper::getInputStreamContext() { return m_connection->getInputStreamContext(); } diff --git a/src/oatpp/network/ConnectionPool.hpp b/src/oatpp/network/ConnectionPool.hpp index 4e13b291..20798036 100644 --- a/src/oatpp/network/ConnectionPool.hpp +++ b/src/oatpp/network/ConnectionPool.hpp @@ -101,8 +101,8 @@ public: void setInputStreamIOMode(oatpp::data::stream::IOMode ioMode) override; oatpp::data::stream::IOMode getInputStreamIOMode() override; - oatpp::data::stream::Context* getOutputStreamContext() override; - oatpp::data::stream::Context* getInputStreamContext() override; + oatpp::data::stream::Context& getOutputStreamContext() override; + oatpp::data::stream::Context& getInputStreamContext() override; /** * Mark that this connection cannot be reused in the pool any more. diff --git a/src/oatpp/network/server/SimpleTCPConnectionProvider.cpp b/src/oatpp/network/server/SimpleTCPConnectionProvider.cpp index 2a6d14bf..e76673c1 100644 --- a/src/oatpp/network/server/SimpleTCPConnectionProvider.cpp +++ b/src/oatpp/network/server/SimpleTCPConnectionProvider.cpp @@ -54,12 +54,12 @@ SimpleTCPConnectionProvider::ExtendedConnection::ExtendedConnection(data::v_io_h , m_context(data::stream::StreamType::STREAM_INFINITE, std::forward(properties)) {} -oatpp::data::stream::Context* SimpleTCPConnectionProvider::ExtendedConnection::getOutputStreamContext() { - return &m_context; +oatpp::data::stream::Context& SimpleTCPConnectionProvider::ExtendedConnection::getOutputStreamContext() { + return m_context; } -oatpp::data::stream::Context* SimpleTCPConnectionProvider::ExtendedConnection::getInputStreamContext() { - return &m_context; +oatpp::data::stream::Context& SimpleTCPConnectionProvider::ExtendedConnection::getInputStreamContext() { + return m_context; } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/src/oatpp/network/server/SimpleTCPConnectionProvider.hpp b/src/oatpp/network/server/SimpleTCPConnectionProvider.hpp index 5579fe0a..b2130a62 100644 --- a/src/oatpp/network/server/SimpleTCPConnectionProvider.hpp +++ b/src/oatpp/network/server/SimpleTCPConnectionProvider.hpp @@ -63,13 +63,13 @@ public: * Get output stream context. * @return - &id:oatpp::data::stream::Context;. */ - oatpp::data::stream::Context* getOutputStreamContext() override; + oatpp::data::stream::Context& getOutputStreamContext() override; /** * Get input stream context.
* @return - &id:oatpp::data::stream::Context;. */ - oatpp::data::stream::Context* getInputStreamContext() override; + oatpp::data::stream::Context& getInputStreamContext() override; }; diff --git a/src/oatpp/network/virtual_/Pipe.cpp b/src/oatpp/network/virtual_/Pipe.cpp index 6631d359..349df1db 100644 --- a/src/oatpp/network/virtual_/Pipe.cpp +++ b/src/oatpp/network/virtual_/Pipe.cpp @@ -26,6 +26,8 @@ namespace oatpp { namespace network { namespace virtual_ { +data::stream::DefaultInitializedContext Pipe::Reader::DEFAULT_CONTEXT(data::stream::StreamType::STREAM_INFINITE); + void Pipe::Reader::setInputStreamIOMode(oatpp::data::stream::IOMode ioMode) { m_ioMode = ioMode; } @@ -103,8 +105,8 @@ oatpp::async::Action Pipe::Reader::suggestInputStreamAction(data::v_io_size ioRe } -oatpp::data::stream::Context* Pipe::Reader::getInputStreamContext() { - return nullptr; +oatpp::data::stream::Context& Pipe::Reader::getInputStreamContext() { + return DEFAULT_CONTEXT; } void Pipe::Reader::notifyWaitList() { @@ -113,6 +115,8 @@ void Pipe::Reader::notifyWaitList() { //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +data::stream::DefaultInitializedContext Pipe::Writer::DEFAULT_CONTEXT(data::stream::StreamType::STREAM_INFINITE); + void Pipe::Writer::setOutputStreamIOMode(oatpp::data::stream::IOMode ioMode) { m_ioMode = ioMode; } @@ -121,8 +125,8 @@ oatpp::data::stream::IOMode Pipe::Writer::getOutputStreamIOMode() { return m_ioMode; } -oatpp::data::stream::Context* Pipe::Writer::getOutputStreamContext() { - return nullptr; +oatpp::data::stream::Context& Pipe::Writer::getOutputStreamContext() { + return DEFAULT_CONTEXT; } void Pipe::Writer::setMaxAvailableToWrite(data::v_io_size maxAvailableToWrite) { diff --git a/src/oatpp/network/virtual_/Pipe.hpp b/src/oatpp/network/virtual_/Pipe.hpp index 1bc9b679..b10b87c0 100644 --- a/src/oatpp/network/virtual_/Pipe.hpp +++ b/src/oatpp/network/virtual_/Pipe.hpp @@ -52,7 +52,10 @@ public: */ class Reader : public oatpp::data::stream::InputStream { friend Pipe; + public: + static data::stream::DefaultInitializedContext DEFAULT_CONTEXT; private: + class WaitListListener : public oatpp::async::CoroutineWaitList::Listener { private: Pipe* m_pipe; @@ -70,6 +73,7 @@ public: } }; + private: Pipe* m_pipe; oatpp::data::stream::IOMode m_ioMode; @@ -136,7 +140,7 @@ public: * Get stream context. * @return */ - oatpp::data::stream::Context* getInputStreamContext() override; + oatpp::data::stream::Context& getInputStreamContext() override; /** * Notify coroutine wait-list @@ -151,6 +155,8 @@ public: */ class Writer : public oatpp::data::stream::OutputStream { friend Pipe; + public: + static data::stream::DefaultInitializedContext DEFAULT_CONTEXT; private: class WaitListListener : public oatpp::async::CoroutineWaitList::Listener { private: @@ -232,7 +238,7 @@ public: * Get stream context. * @return */ - oatpp::data::stream::Context* getOutputStreamContext() override; + oatpp::data::stream::Context& getOutputStreamContext() override; /** * Notify coroutine wait-list diff --git a/src/oatpp/network/virtual_/Socket.cpp b/src/oatpp/network/virtual_/Socket.cpp index 2453f49f..52d7d07a 100644 --- a/src/oatpp/network/virtual_/Socket.cpp +++ b/src/oatpp/network/virtual_/Socket.cpp @@ -76,12 +76,12 @@ oatpp::data::stream::IOMode Socket::getInputStreamIOMode() { return m_pipeIn->getReader()->getInputStreamIOMode(); } -oatpp::data::stream::Context* Socket::getOutputStreamContext() { +oatpp::data::stream::Context& Socket::getOutputStreamContext() { return m_pipeOut->getWriter()->getOutputStreamContext(); } -oatpp::data::stream::Context* Socket::getInputStreamContext() { +oatpp::data::stream::Context& Socket::getInputStreamContext() { return m_pipeIn->getReader()->getInputStreamContext(); } diff --git a/src/oatpp/network/virtual_/Socket.hpp b/src/oatpp/network/virtual_/Socket.hpp index 8591b584..fbcd0fd4 100644 --- a/src/oatpp/network/virtual_/Socket.hpp +++ b/src/oatpp/network/virtual_/Socket.hpp @@ -128,13 +128,13 @@ public: * Get output stream context. * @return */ - oatpp::data::stream::Context* getOutputStreamContext() override; + oatpp::data::stream::Context& getOutputStreamContext() override; /** * Get input stream context. * @return */ - oatpp::data::stream::Context* getInputStreamContext() override; + oatpp::data::stream::Context& getInputStreamContext() override; /** * Close socket pipes. diff --git a/src/oatpp/parser/json/Beautifier.cpp b/src/oatpp/parser/json/Beautifier.cpp index 2aee1ec1..7628b0d0 100644 --- a/src/oatpp/parser/json/Beautifier.cpp +++ b/src/oatpp/parser/json/Beautifier.cpp @@ -153,7 +153,7 @@ Beautifier::IOMode Beautifier::getOutputStreamIOMode() { return m_outputStream->getOutputStreamIOMode(); } -Beautifier::Context* Beautifier::getOutputStreamContext() { +Beautifier::Context& Beautifier::getOutputStreamContext() { return m_outputStream->getOutputStreamContext(); } diff --git a/src/oatpp/parser/json/Beautifier.hpp b/src/oatpp/parser/json/Beautifier.hpp index 6dcf3425..60dd5b1f 100644 --- a/src/oatpp/parser/json/Beautifier.hpp +++ b/src/oatpp/parser/json/Beautifier.hpp @@ -79,7 +79,7 @@ public: * Get stream context. * @return */ - Context* getOutputStreamContext() override; + Context& getOutputStreamContext() override; }; diff --git a/test/oatpp/network/ConnectionPoolTest.cpp b/test/oatpp/network/ConnectionPoolTest.cpp index 67c02c93..606971c4 100644 --- a/test/oatpp/network/ConnectionPoolTest.cpp +++ b/test/oatpp/network/ConnectionPoolTest.cpp @@ -60,7 +60,7 @@ public: throw std::runtime_error("It's a stub!"); } - oatpp::data::stream::Context* getOutputStreamContext() override { + oatpp::data::stream::Context& getOutputStreamContext() override { throw std::runtime_error("It's a stub!"); } @@ -72,7 +72,7 @@ public: throw std::runtime_error("It's a stub!"); } - oatpp::data::stream::Context* getInputStreamContext() override { + oatpp::data::stream::Context& getInputStreamContext() override { throw std::runtime_error("It's a stub!"); }