ClickHouse/dbms/Processors/Sources/SinkToOutputStream.h

29 lines
576 B
C++
Raw Normal View History

#pragma once
#include <Processors/ISink.h>
namespace DB
{
class IBlockOutputStream;
using BlockOutputStreamPtr = std::shared_ptr<IBlockOutputStream>;
2020-02-20 14:40:58 +00:00
/// Sink which writes data to IBlockOutputStream.
/// It's a temporary wrapper.
class SinkToOutputStream : public ISink
{
public:
explicit SinkToOutputStream(BlockOutputStreamPtr stream);
String getName() const override { return "SinkToOutputStream"; }
protected:
void consume(Chunk chunk) override;
void onFinish() override;
private:
BlockOutputStreamPtr stream;
bool initialized = false;
};
}