use core::convert::From;
use super::nsec::GenerateNsecConfig;
use super::nsec3::GenerateNsec3Config;
use crate::dnssec::sign::records::DefaultSorter;
use octseq::{EmptyBuilder, FromBuilder};
#[derive(Clone, Debug, PartialEq, Eq)]
pub enum DenialConfig<O, Sort = DefaultSorter>
where
O: AsRef<[u8]> + From<&'static [u8]>,
{
AlreadyPresent,
Nsec(GenerateNsecConfig),
Nsec3(GenerateNsec3Config<O, Sort>),
}
impl<O> Default for DenialConfig<O, DefaultSorter>
where
O: AsRef<[u8]> + From<&'static [u8]> + FromBuilder,
<O as FromBuilder>::Builder: EmptyBuilder + AsRef<[u8]> + AsMut<[u8]>,
{
fn default() -> Self {
Self::Nsec(GenerateNsecConfig::default())
}
}