NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
NES::PrintSink Class Reference

this class provides a print sink More...

#include <PrintSink.hpp>

Collaboration diagram for NES::PrintSink:
[legend]

Public Member Functions

 PrintSink (SinkFormatPtr format, Runtime::NodeEnginePtr nodeEngine, uint32_t numOfProducers, SharedQueryId sharedQueryId, DecomposedQueryId decomposedQueryId, DecomposedQueryPlanVersion decomposedQueryVersion, std::ostream &pOutputStream=std::cout, uint64_t numberOfOrigins=1)
 Default constructor @Note the default output will be written to cout. More...
 
 ~PrintSink () override
 destructor @Note this is required by some tests TODO: find out why this is required More...
 
void setup () override
 setup method for print sink @Note required due to derivation but does nothing More...
 
void shutdown () override
 shutdown method for print sink @Note required due to derivation but does nothing More...
 
bool writeData (Runtime::TupleBuffer &inputBuffer, Runtime::WorkerContextRef) override
 method to write the content of a tuple buffer to output console More...
 
std::string toString () const override
 override the toString method for the print sink More...
 
SinkMediumTypes getSinkMediumType () override
 method to return the type of medium More...
 
- Public Member Functions inherited from NES::SinkMedium
 SinkMedium (SinkFormatPtr sinkFormat, Runtime::NodeEnginePtr nodeEngine, uint32_t numOfProducers, SharedQueryId sharedQueryId, DecomposedQueryId decomposedQueryId, DecomposedQueryPlanVersion decomposedQueryVersion)
 public constructor for data sink More...
 
 SinkMedium (SinkFormatPtr sinkFormat, Runtime::NodeEnginePtr nodeEngine, uint32_t numOfProducers, SharedQueryId sharedQueryId, DecomposedQueryId decomposedQueryId, DecomposedQueryPlanVersion decomposedQueryVersion, uint64_t numberOfOrigins)
 public constructor for data sink More...
 
virtual bool writeData (Runtime::TupleBuffer &inputBuffer, Runtime::WorkerContext &workerContext)=0
 method to write a TupleBuffer More...
 
SharedQueryId getSharedQueryId () const
 get the id of the owning plan More...
 
DecomposedQueryId getParentPlanId () const
 get the subplan id of the owning plan More...
 
DecomposedQueryPlanVersion getParentPlanVersion () const
 get the subplan version of the owning plan More...
 
uint64_t getNumberOfWrittenOutBuffers ()
 debug function for testing to get number of written buffers More...
 
uint64_t getNumberOfWrittenOutTuples ()
 debug function for testing to get number of written tuples More...
 
SchemaPtr getSchemaPtr () const
 method to return the current schema of the sink More...
 
std::string getSinkFormat ()
 method to get the format as string More...
 
void reconfigure (Runtime::ReconfigurationMessage &message, Runtime::WorkerContext &context) override
 
void postReconfigurationCallback (Runtime::ReconfigurationMessage &message) override
 
OperatorId getOperatorId () const
 Get operator id. More...
 
void setMigrationFlag ()
 Sets that sink is used for state migration. More...
 
bool isForMigration () const
 Check whether this sink is used for state migration. More...
 
- Public Member Functions inherited from NES::Runtime::Reconfigurable
 ~Reconfigurable () NES_NOEXCEPT(false) override=default
 
- Public Member Functions inherited from NES::detail::virtual_enable_shared_from_this< Reconfigurable, false >
 ~virtual_enable_shared_from_this () NES_NOEXCEPT(isNoexceptDestructible) override=default
 
std::shared_ptr< T1 > shared_from_this ()
 
std::weak_ptr< T1 > weak_from_this ()
 
- Public Member Functions inherited from NES::detail::virtual_enable_shared_from_this_base< isNoexceptDestructible >
virtual ~virtual_enable_shared_from_this_base () NES_NOEXCEPT(isNoexceptDestructible)=default
 

Additional Inherited Members

- Protected Attributes inherited from NES::SinkMedium
SinkFormatPtr sinkFormat
 
bool schemaWritten
 
Runtime::NodeEnginePtr nodeEngine
 
std::atomic< uint32_t > activeProducers
 termination machinery More...
 
SharedQueryId sharedQueryId
 
DecomposedQueryId decomposedQueryId
 
DecomposedQueryPlanVersion decomposedQueryVersion
 
uint64_t numberOfOrigins
 
uint64_t sentBuffer {0}
 
uint64_t sentTuples {0}
 
std::recursive_mutex writeMutex
 
bool migration {false}
 

Detailed Description

this class provides a print sink

Constructor & Destructor Documentation

◆ PrintSink()

NES::PrintSink::PrintSink ( SinkFormatPtr  format,
Runtime::NodeEnginePtr  nodeEngine,
uint32_t  numOfProducers,
SharedQueryId  sharedQueryId,
DecomposedQueryId  decomposedQueryId,
DecomposedQueryPlanVersion  decomposedQueryVersion,
std::ostream &  pOutputStream = std::cout,
uint64_t  numberOfOrigins = 1 
)

Default constructor @Note the default output will be written to cout.

◆ ~PrintSink()

NES::PrintSink::~PrintSink ( )
overridedefault

destructor @Note this is required by some tests TODO: find out why this is required

Member Function Documentation

◆ getSinkMediumType()

SinkMediumTypes NES::PrintSink::getSinkMediumType ( )
overridevirtual

method to return the type of medium

Returns
type of medium

Implements NES::SinkMedium.

References NES::PRINT_SINK.

◆ setup()

void NES::PrintSink::setup ( )
overridevirtual

setup method for print sink @Note required due to derivation but does nothing

Implements NES::SinkMedium.

◆ shutdown()

void NES::PrintSink::shutdown ( )
overridevirtual

shutdown method for print sink @Note required due to derivation but does nothing

Implements NES::SinkMedium.

◆ toString()

std::string NES::PrintSink::toString ( ) const
overridevirtual

override the toString method for the print sink

Returns
returns string describing the print sink

Implements NES::SinkMedium.

References NES::SinkMedium::sinkFormat.

◆ writeData()

bool NES::PrintSink::writeData ( Runtime::TupleBuffer inputBuffer,
Runtime::WorkerContextRef   
)
override

method to write the content of a tuple buffer to output console

Parameters
tuplebuffer to write
Returns
bool indicating success of the write

References NES_TRACE, NES::SinkMedium::sinkFormat, and NES::SinkMedium::writeMutex.


The documentation for this class was generated from the following files: