fn from_message()

in sdk/eventhubs/azure_messaging_eventhubs/src/models/event_data.rs [73:103]


    fn from_message(message: &AmqpMessage) -> Self {
        // // Create an EventData from the message.
        let mut event_data_builder = EventData::builder();

        // If the AMQP message body is a single binary value, copy it to
        // the event data body.
        if let AmqpMessageBody::Binary(binary) = message.body() {
            if binary.len() == 1 {
                event_data_builder = event_data_builder.with_body(binary[0].clone());
            }
        }

        if let Some(properties) = message.properties() {
            if let Some(content_type) = &properties.content_type {
                event_data_builder =
                    event_data_builder.with_content_type(content_type.clone().into());
            }
            if let Some(correlation_id) = &properties.correlation_id {
                event_data_builder = event_data_builder.with_correlation_id(correlation_id.clone());
            }
            if let Some(message_id) = &properties.message_id {
                event_data_builder = event_data_builder.with_message_id(message_id.clone());
            }
        }
        if let Some(application_properties) = message.application_properties() {
            for (key, value) in application_properties.0.clone() {
                event_data_builder = event_data_builder.add_property(key, value);
            }
        }
        event_data_builder.build()
    }