hickory_proto::op::update_message

Trait UpdateMessage

Source
pub trait UpdateMessage: Debug {
    // Required methods
    fn id(&self) -> u16;
    fn add_zone(&mut self, query: Query);
    fn add_pre_requisite(&mut self, record: Record);
    fn add_pre_requisites<R, I>(&mut self, records: R)
       where R: IntoIterator<Item = Record, IntoIter = I>,
             I: Iterator<Item = Record>;
    fn add_update(&mut self, record: Record);
    fn add_updates<R, I>(&mut self, records: R)
       where R: IntoIterator<Item = Record, IntoIter = I>,
             I: Iterator<Item = Record>;
    fn add_additional(&mut self, record: Record);
    fn zones(&self) -> &[Query];
    fn prerequisites(&self) -> &[Record];
    fn updates(&self) -> &[Record];
    fn additionals(&self) -> &[Record];
    fn sig0(&self) -> &[Record];
}
Expand description

To reduce errors in using the Message struct as an Update, this will do the call throughs to properly do that.

Generally rather than constructing this by hand, see the update methods on Client

Required Methods§

Source

fn id(&self) -> u16

see Header::id

Source

fn add_zone(&mut self, query: Query)

Adds the zone section, i.e. name.example.com would be example.com

Source

fn add_pre_requisite(&mut self, record: Record)

Add the pre-requisite records

These must exist, or not, for the Update request to go through.

Source

fn add_pre_requisites<R, I>(&mut self, records: R)
where R: IntoIterator<Item = Record, IntoIter = I>, I: Iterator<Item = Record>,

Add all the Records from the Iterator to the pre-requisites section

Source

fn add_update(&mut self, record: Record)

Add the Record to be updated

Source

fn add_updates<R, I>(&mut self, records: R)
where R: IntoIterator<Item = Record, IntoIter = I>, I: Iterator<Item = Record>,

Add the Records from the Iterator to the updates section

Source

fn add_additional(&mut self, record: Record)

Add Records to the additional Section of the UpdateMessage

Source

fn zones(&self) -> &[Query]

Returns the Zones to be updated, generally should only be one.

Source

fn prerequisites(&self) -> &[Record]

Returns the pre-requisites

Source

fn updates(&self) -> &[Record]

Returns the records to be updated

Source

fn additionals(&self) -> &[Record]

Returns the additional records

Source

fn sig0(&self) -> &[Record]

This is used to authenticate update messages.

see Message::sig0() for more information.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl UpdateMessage for Message

to reduce errors in using the Message struct as an Update, this will do the call throughs to properly do that.