ydb 0.10.4

Crate contains generated low-level grpc code from YDB API protobuf, used as base for ydb crate
Documentation
use crate::grpc_wrapper::raw_errors::RawError;
use crate::grpc_wrapper::raw_table_service::client::{CollectStatsMode, RawQueryStats};
use crate::grpc_wrapper::raw_ydb_operation::RawOperationParams;

pub(crate) struct RawCommitTransactionRequest {
    pub session_id: String,
    pub tx_id: String,
    pub operation_params: RawOperationParams,
    pub collect_stats: CollectStatsMode,
}

impl From<RawCommitTransactionRequest> for ydb_grpc::ydb_proto::table::CommitTransactionRequest {
    fn from(value: RawCommitTransactionRequest) -> Self {
        Self {
            session_id: value.session_id,
            tx_id: value.tx_id,
            operation_params: Some(value.operation_params.into()),
            collect_stats: value.collect_stats.into(),
        }
    }
}

pub(crate) struct RawCommitTransactionResult {
    pub query_stats: Option<RawQueryStats>,
}

impl TryFrom<ydb_grpc::ydb_proto::table::CommitTransactionResult> for RawCommitTransactionResult {
    type Error = RawError;

    fn try_from(
        value: ydb_grpc::ydb_proto::table::CommitTransactionResult,
    ) -> Result<Self, Self::Error> {
        Ok(Self {
            query_stats: value.query_stats.map(Into::into),
        })
    }
}