using BuildingBlock.Catalog.Contracts.Grpc; using BuildingBlock.Catalog.Contracts.Products; using BuildingBlock.Catalog.Contracts.Responses; namespace BuildingBlock.Catalog.Contracts.Adapters; /// /// Defines adapter boundary for catalog gRPC contract translation. /// public interface ICatalogGrpcContractAdapter { /// /// Maps transport-neutral product contract into gRPC shape. /// /// Transport-neutral product contract. /// gRPC product contract shape. CatalogProductGrpcContract ToGrpcProduct(ProductContract contract); /// /// Maps gRPC product contract into transport-neutral response. /// /// gRPC product contract shape. /// Transport-neutral product response contract. ProductContractResponse FromGrpcProduct(CatalogProductGrpcContract contract); }