aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/unified_agent_client/stream.h
blob: 5f65d9fb2e0e086b0037e60d43e7c305657afd62 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#include <library/cpp/unified_agent_client/client.h>

namespace NUnifiedAgent {
    class IStreamRecordConverter {
    public:
        virtual ~IStreamRecordConverter() = default;

        virtual TClientMessage Convert(const void* buf, size_t len) const = 0;
    };

    THolder<IStreamRecordConverter> MakeDefaultStreamRecordConverter(bool stripTrailingNewLine = true);

    THolder<IOutputStream> MakeOutputStream(const TClientParameters& parameters,
        const TSessionParameters& sessionParameters = {},
        THolder<IStreamRecordConverter> recordConverter = {});
}