frostfs-sdk-python/frostfs_sdk/models/mappers/meta_header_mapper.py
Ilyas Niyazov 297e107b10 [#3] Added generate proto script create container method
Signed-off-by: Ilyas Niyazov <i.niyazov@yadro.com>
2025-03-25 11:13:48 +03:00

26 lines
986 B
Python

from frostfs_sdk.models.mappers.version_mapper import VersionMapper
from frostfs_sdk.models.dto.meta_header import MetaHeader
from frostfs_sdk.protos.models.session import types_pb2 as types_pb2_session
class MetaHeaderMapper:
"""
Maps a MetaHeader object to a Protobuf RequestMetaHeader object.
"""
@staticmethod
def to_grpc_message(meta_header: MetaHeader):
"""
Converts a MetaHeader object to a Protobuf RequestMetaHeader object.
:param meta_header: A MetaHeader object.
:return: A Protobuf RequestMetaHeader object.
:raises ValueError: If the input meta_header is None.
"""
if meta_header is None:
raise ValueError(f"Input parameter is missing: {MetaHeader.__name__}")
return types_pb2_session.RequestMetaHeader(
version=VersionMapper.to_grpc_message(meta_header.get_version()),
epoch=meta_header.get_epoch(),
ttl=meta_header.get_ttl()
)