use super::{parse_cloudflare_trace, HttpProvider};
use crate::provider::BoxedProvider;
pub fn cloudflare() -> HttpProvider {
HttpProvider::new("Cloudflare", "https://1.1.1.1/cdn-cgi/trace")
.with_parser(parse_cloudflare_trace)
}
pub fn aws() -> HttpProvider {
HttpProvider::new("AWS", "https://checkip.amazonaws.com")
}
pub fn provider_names() -> &'static [&'static str] {
&["Cloudflare", "AWS"]
}
pub fn default_providers() -> Vec<BoxedProvider> {
vec![Box::new(cloudflare()), Box::new(aws())]
}