aboutsummaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/interface/format.cpp
diff options
context:
space:
mode:
authormax42 <max42@yandex-team.com>2023-06-30 11:13:34 +0300
committermax42 <max42@yandex-team.com>2023-06-30 11:13:34 +0300
commit3e1899838408bbad47622007aa382bc8a2b01f87 (patch)
tree0f21c1e6add187ddb6c3ccc048a7d640ce03fb87 /yt/cpp/mapreduce/interface/format.cpp
parent5463eb3f5e72a86f858a3d27c886470a724ede34 (diff)
downloadydb-3e1899838408bbad47622007aa382bc8a2b01f87.tar.gz
Revert "YT-19324: move YT provider to ydb/library/yql"
This reverts commit ca272f12fdd0e8d5c3e957fc87939148f1caaf72, reversing changes made to 49f8acfc8b0b5c0071b804423bcf53fda26c7c12.
Diffstat (limited to 'yt/cpp/mapreduce/interface/format.cpp')
-rw-r--r--yt/cpp/mapreduce/interface/format.cpp135
1 files changed, 0 insertions, 135 deletions
diff --git a/yt/cpp/mapreduce/interface/format.cpp b/yt/cpp/mapreduce/interface/format.cpp
deleted file mode 100644
index f8318310a4..0000000000
--- a/yt/cpp/mapreduce/interface/format.cpp
+++ /dev/null
@@ -1,135 +0,0 @@
-#include "format.h"
-#include "protobuf_format.h"
-
-#include "errors.h"
-
-#include <google/protobuf/descriptor.h>
-#include <google/protobuf/messagext.h>
-
-namespace NYT {
-
-TTableSchema CreateTableSchema(
- const ::google::protobuf::Descriptor& messageDescriptor,
- bool keepFieldsWithoutExtension)
-{
- return NDetail::CreateTableSchemaImpl(messageDescriptor, keepFieldsWithoutExtension);
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-TFormat::TFormat(const TNode& config)
- : Config(config)
-{ }
-
-
-TFormat TFormat::Protobuf(
- const TVector<const ::google::protobuf::Descriptor*>& descriptors,
- bool withDescriptors)
-{
- if (withDescriptors) {
- return TFormat(NDetail::MakeProtoFormatConfigWithDescriptors(descriptors));
- } else {
- return TFormat(NDetail::MakeProtoFormatConfigWithTables(descriptors));
- }
-}
-
-TFormat TFormat::YsonText()
-{
- TNode config("yson");
- config.Attributes()("format", "text");
- return TFormat(config);
-}
-
-TFormat TFormat::YsonBinary()
-{
- TNode config("yson");
- config.Attributes()("format", "binary");
- return TFormat(config);
-}
-
-TFormat TFormat::YaMRLenval()
-{
- TNode config("yamr");
- config.Attributes()("lenval", true)("has_subkey", true);
- return TFormat(config);
-}
-
-TFormat TFormat::Json()
-{
- return TFormat(TNode("json"));
-}
-
-bool TFormat::IsTextYson() const
-{
- if (!Config.IsString() || Config.AsString() != "yson") {
- return false;
- }
- if (!Config.HasAttributes()) {
- return false;
- }
- const auto& attributes = Config.GetAttributes();
- if (!attributes.HasKey("format") || attributes["format"] != TNode("text")) {
- return false;
- }
- return true;
-}
-
-bool TFormat::IsProtobuf() const
-{
- return Config.IsString() && Config.AsString() == "protobuf";
-}
-
-bool TFormat::IsYamredDsv() const
-{
- return Config.IsString() && Config.AsString() == "yamred_dsv";
-}
-
-static TString FormatName(const TFormat& format)
-{
- if (!format.Config.IsString()) {
- Y_VERIFY(format.Config.IsUndefined());
- return "<undefined>";
- }
- return format.Config.AsString();
-}
-
-TYamredDsvAttributes TFormat::GetYamredDsvAttributes() const
-{
- if (!IsYamredDsv()) {
- ythrow TApiUsageError() << "Cannot get yamred_dsv attributes for " << FormatName(*this) << " format";
- }
- TYamredDsvAttributes attributes;
-
- const auto& nodeAttributes = Config.GetAttributes();
- {
- const auto& keyColumns = nodeAttributes["key_column_names"];
- if (!keyColumns.IsList()) {
- ythrow yexception() << "Ill-formed format: key_column_names is of non-list type: " << keyColumns.GetType();
- }
- for (auto& column : keyColumns.AsList()) {
- if (!column.IsString()) {
- ythrow yexception() << "Ill-formed format: key_column_names: " << column.GetType();
- }
- attributes.KeyColumnNames.push_back(column.AsString());
- }
- }
-
- if (nodeAttributes.HasKey("subkey_column_names")) {
- const auto& subkeyColumns = nodeAttributes["subkey_column_names"];
- if (!subkeyColumns.IsList()) {
- ythrow yexception() << "Ill-formed format: subkey_column_names is not a list: " << subkeyColumns.GetType();
- }
- for (const auto& column : subkeyColumns.AsList()) {
- if (!column.IsString()) {
- ythrow yexception() << "Ill-formed format: non-string inside subkey_key_column_names: " << column.GetType();
- }
- attributes.SubkeyColumnNames.push_back(column.AsString());
- }
- }
-
- return attributes;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-} // namespace NYT