# Connection.hpp

This File On Github
Ask A Question

API: latest
module: oatpp
#include "oatpp/network/tcp/Connection.hpp"

# Connection

TCP Connection implementation. Extends oatpp::base::Countable and oatpp::data::stream::IOStream.

namespace oatpp { namespace network { namespace tcp { 
  class Connection : public oatpp::base::Countable, public oatpp::data::stream::IOStream {}
}}}

# Methods

Return Type Name Summary
[none] Connection Constructor.
[none] ~Connection Virtual Destructor (See oatpp::base::Countable).
v_io_size write Implementation of oatpp::data::stream::IOStream::write.
v_io_size read Implementation of oatpp::data::stream::IOStream::read.
void setOutputStreamIOMode Set OutputStream I/O mode.
oatpp::data::stream::IOMode getOutputStreamIOMode Set OutputStream I/O mode.
oatpp::data::stream::Context& getOutputStreamContext Get output stream context.
void setInputStreamIOMode Set InputStream I/O mode.
oatpp::data::stream::IOMode getInputStreamIOMode Get InputStream I/O mode.
oatpp::data::stream::Context& getInputStreamContext Get input stream context.
void close Close socket handle.
v_io_handle getHandle Get socket handle.

# Connection::Connection

Constructor.

  • @param handle - file descriptor (socket handle). See oatpp::v_io_handle.

Connection(v_io_handle handle)

# Connection::~Connection

Virtual Destructor (See oatpp::base::Countable). Close socket handle.

~Connection()

# Connection::write

Implementation of oatpp::data::stream::IOStream::write.

  • @param buff - buffer containing data to write.
  • @param count - bytes count you want to write.
  • @param action - async specific action. If action is NOT oatpp::async::Action::TYPE_NONE, then caller MUST return this action on coroutine iteration.
  • @return - actual amount of bytes written. See oatpp::v_io_size.

v_io_size write(const void *buff, v_buff_size count, async::Action& action) override

# Connection::read

Implementation of oatpp::data::stream::IOStream::read.

  • @param buff - buffer to read data to.
  • @param count - buffer size.
  • @param action - async specific action. If action is NOT oatpp::async::Action::TYPE_NONE, then caller MUST return this action on coroutine iteration.
  • @return - actual amount of bytes read. See oatpp::v_io_size.

v_io_size read(void *buff, v_buff_size count, async::Action& action) override

# Connection::setOutputStreamIOMode

Set OutputStream I/O mode.

  • @param ioMode

void setOutputStreamIOMode(oatpp::data::stream::IOMode ioMode) override

# Connection::getOutputStreamIOMode

Set OutputStream I/O mode.

  • @return

oatpp::data::stream::IOMode getOutputStreamIOMode() override

# Connection::getOutputStreamContext

Get output stream context.

oatpp::data::stream::Context& getOutputStreamContext() override

# Connection::setInputStreamIOMode

Set InputStream I/O mode.

  • @param ioMode

void setInputStreamIOMode(oatpp::data::stream::IOMode ioMode) override

# Connection::getInputStreamIOMode

Get InputStream I/O mode.

  • @return

oatpp::data::stream::IOMode getInputStreamIOMode() override

# Connection::getInputStreamContext

Get input stream context.

oatpp::data::stream::Context& getInputStreamContext() override

# Connection::close

Close socket handle.

void close()

# Connection::getHandle

Get socket handle.

  • @return - socket handle. oatpp::v_io_handle.

v_io_handle getHandle()