pub struct UpdateReleaseMessage {
pub header: MessageHeaderRequest,
pub update_list: Vec<UpdateOperation>,
pub resource_updates: IndexMap<String, ResourceUpdate>,
pub release_updates: IndexMap<String, ReleaseUpdate>,
pub deal_updates: IndexMap<String, DealUpdate>,
pub update_metadata: UpdateMetadata,
}
Expand description
Complete UpdateReleaseMessage structure
Represents a complete DDEX UpdateReleaseMessage that describes incremental changes to an existing DDEX message. This allows efficient partial updates without resending entire catalogs.
§Example
use ddex_builder::messages::update_release::UpdateReleaseMessage;
use ddex_builder::builder::MessageHeaderRequest;
use indexmap::IndexMap;
// Create an update message to modify a release title
let update_message = UpdateReleaseMessage {
header: MessageHeaderRequest {
message_id: Some("UPD-MSG-20241215-001".to_string()),
// ... other header fields
},
update_list: vec![
// UpdateOperation to change release title
],
resource_updates: IndexMap::new(),
release_updates: IndexMap::new(),
deal_updates: IndexMap::new(),
update_metadata: UpdateMetadata {
original_message_id: "ORIG-MSG-001".to_string(),
},
};
Fields§
§header: MessageHeaderRequest
Message header containing sender, recipient, and timing information
update_list: Vec<UpdateOperation>
Ordered list of update operations to perform on the target message
resource_updates: IndexMap<String, ResourceUpdate>
Resource-specific updates indexed by resource ID
release_updates: IndexMap<String, ReleaseUpdate>
Release-specific updates indexed by release ID
deal_updates: IndexMap<String, DealUpdate>
Deal-specific updates indexed by deal ID (optional)
update_metadata: UpdateMetadata
Metadata describing this update operation
Trait Implementations§
Source§impl Clone for UpdateReleaseMessage
impl Clone for UpdateReleaseMessage
Source§fn clone(&self) -> UpdateReleaseMessage
fn clone(&self) -> UpdateReleaseMessage
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for UpdateReleaseMessage
impl Debug for UpdateReleaseMessage
Source§impl<'de> Deserialize<'de> for UpdateReleaseMessage
impl<'de> Deserialize<'de> for UpdateReleaseMessage
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for UpdateReleaseMessage
impl RefUnwindSafe for UpdateReleaseMessage
impl Send for UpdateReleaseMessage
impl Sync for UpdateReleaseMessage
impl Unpin for UpdateReleaseMessage
impl UnwindSafe for UpdateReleaseMessage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more