impl gaxi::prost::ToProto<PubsubMessage> for crate::generated::gapic_dataplane::model::PubsubMessage {
type Output = PubsubMessage;
fn to_proto(self) -> std::result::Result<PubsubMessage, gaxi::prost::ConvertError> {
Ok(Self::Output {
data: self.data.to_proto()?,
attributes: self.attributes
.into_iter()
.map(|(k, v)| {
gaxi::prost::pair_transpose(k.to_proto(), v.to_proto())
}).collect::<std::result::Result<std::collections::HashMap<_, _>, _>>()?,
message_id: self.message_id.to_proto()?,
publish_time: self.publish_time.map(|v| v.to_proto()).transpose()?,
ordering_key: self.ordering_key.to_proto()?,
})
}
}
impl gaxi::prost::FromProto<crate::generated::gapic_dataplane::model::PubsubMessage> for PubsubMessage {
fn cnv(self) -> std::result::Result<crate::generated::gapic_dataplane::model::PubsubMessage, gaxi::prost::ConvertError> {
Ok(
crate::generated::gapic_dataplane::model::PubsubMessage::new()
.set_data(self.data)
.set_attributes(self.attributes.into_iter()
.map(|(k, v)| {
gaxi::prost::pair_transpose(k.cnv(), v.cnv())
}).collect::<std::result::Result<std::collections::HashMap<_, _>, _>>()?)
.set_message_id(self.message_id)
.set_or_clear_publish_time(self.publish_time.map(|v| v.cnv()).transpose()?)
.set_ordering_key(self.ordering_key)
)
}
}
impl gaxi::prost::ToProto<PublishRequest> for crate::generated::gapic_dataplane::model::PublishRequest {
type Output = PublishRequest;
fn to_proto(self) -> std::result::Result<PublishRequest, gaxi::prost::ConvertError> {
Ok(Self::Output {
topic: self.topic.to_proto()?,
messages: self.messages
.into_iter()
.map(|v| v.to_proto())
.collect::<std::result::Result<std::vec::Vec<_>, _>>()?,
})
}
}
impl gaxi::prost::FromProto<crate::generated::gapic_dataplane::model::PublishRequest> for PublishRequest {
fn cnv(self) -> std::result::Result<crate::generated::gapic_dataplane::model::PublishRequest, gaxi::prost::ConvertError> {
Ok(
crate::generated::gapic_dataplane::model::PublishRequest::new()
.set_topic(self.topic)
.set_messages(self.messages.into_iter().map(|v| v.cnv())
.collect::<std::result::Result<std::vec::Vec<_>, _>>()?)
)
}
}
impl gaxi::prost::ToProto<PublishResponse> for crate::generated::gapic_dataplane::model::PublishResponse {
type Output = PublishResponse;
fn to_proto(self) -> std::result::Result<PublishResponse, gaxi::prost::ConvertError> {
Ok(Self::Output {
message_ids: self.message_ids
.into_iter()
.map(|v| v.to_proto())
.collect::<std::result::Result<std::vec::Vec<_>, _>>()?,
})
}
}
impl gaxi::prost::FromProto<crate::generated::gapic_dataplane::model::PublishResponse> for PublishResponse {
fn cnv(self) -> std::result::Result<crate::generated::gapic_dataplane::model::PublishResponse, gaxi::prost::ConvertError> {
Ok(
crate::generated::gapic_dataplane::model::PublishResponse::new()
.set_message_ids(self.message_ids.into_iter().map(|v| v.cnv())
.collect::<std::result::Result<std::vec::Vec<_>, _>>()?)
)
}
}