libedgegrid 0.1.0

This library implements an Authentication handler for the Akamai OPEN EdgeGrid Authentication scheme in Rust
#[derive(Debug, Deserialize)]
pub struct LocationsResponse {
    locations: Option<Vec<String>>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct DTError {
    title: Option<String>,
    #[serde(rename="type")]
    ccu_type: Option<String>,
    status: Option<usize>,
    detail: Option<String>,
    instance: Option<String>,
    #[serde(rename="authzRealm")]
    authz_realm: Option<String>,
    method: Option<String>,
    #[serde(rename="serverIp")]
    server_ip: Option<String>,
    #[serde(rename="clientIp")]
    client_ip: Option<String>,
    #[serde(rename="requestId")]
    request_id: Option<String>,
    #[serde(rename="requestTime")]
    request_time: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct DigRecordData {
    domain: String,
    ttl: usize,
    #[serde(rename="recordClass")]
    record_class: String,
    #[serde(rename="recordType")]
    record_type: String,
    #[serde(rename="preferenceValues")]
    preference_values: Option<String>,
    value: String,
}

#[derive(Debug, Deserialize)]
pub struct DigData {
    hostname: Option<String>,
    #[serde(rename="queryType")]
    query_type: Option<String>,
    #[serde(rename="answerSection")]
    answer_section: Option<Vec<DigRecordData>>,
    #[serde(rename="authoritySection")]
    authority_section: Option<Vec<DigRecordData>>,
    result: Option<String>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct DigResponse {
    dig: DigData,
}

#[derive(Debug, Deserialize)]
pub struct MtrHop {
    num: Option<String>,
    host: Option<String>,
    loss: Option<String>,
    sent: Option<String>,
    last: Option<String>,
    avg: Option<String>,
    best: Option<String>,
    worst: Option<String>,
    #[serde(rename="stDev")]
    st_dev: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct MtrData {
    source: Option<String>,
    destination: Option<String>,
    host: Option<String>,
    #[serde(rename="packetLoss")]
    packet_loss: Option<String>,
    #[serde(rename="avgLatency")]
    avg_latency: Option<String>,
    analysis: Option<String>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
    hops: Option<Vec<MtrHop>>
}

#[derive(Debug, Deserialize)]
pub struct MtrResponse {
    mtr: MtrData,
}

#[derive(Debug, Deserialize)]
pub struct IPGeoLocationData {
    #[serde(rename="clientIp")]
    client_ip: Option<String>,
    #[serde(rename="countryCode")]
    country_code: Option<String>,
    #[serde(rename="regionCode")]
    region_code: Option<String>,
    city: Option<String>,
    dma: Option<String>,
    msa: Option<String>,
    pmsa: Option<String>,
    #[serde(rename="areaCode")]
    area_code: Option<String>,
    latitude: Option<String>,
    longitude: Option<String>,
    county: Option<String>,
    continent: Option<String>,
    fips: Option<String>,
    #[serde(rename="timeZone")]
    time_zone: Option<String>,
    network: Option<String>,
    #[serde(rename="networkType")]
    network_type: Option<String>,
    #[serde(rename="zipCode")]
    zip_code: Option<String>,
    throughput: Option<String>,
    #[serde(rename="asNum")]
    as_num: Option<String>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct IPGeoLocationResponse {
    #[serde(rename="ipGeoLocation")]
    geo: IPGeoLocationData
}

#[derive(Debug, Deserialize)]
pub struct ArlData {
    #[serde(rename="typeCode")]
    type_code: Option<String>,
    #[serde(rename="originServer")]
    origin_server: Option<String>,
    #[serde(rename="cpCode")]
    cp_code: Option<String>,
    #[serde(rename="serialNumber")]
    serial_number: Option<String>,
    ttl: Option<String>,
    pragma: Option<String>,
    #[serde(rename="cacheControl")]
    cache_control: Option<String>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct ArlResponse {
    arl: ArlData
}

#[derive(Debug, Deserialize)]
pub struct LogLine {
    #[serde(rename="logLine")]
    log_line: Option<String>,
    fields: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct ErrorData {
    url: Option<String>,
    #[serde(rename="httpResponseCode")]
    http_response_code: Option<usize>,
    #[serde(rename="dateTime")]
    date_time: Option<String>,
    #[serde(rename="epochTime")]
    epoch_time: Option<String>,
    #[serde(rename="clientIP")]
    client_ip: Option<String>,
    #[serde(rename="serverIP")]
    server_ip: Option<String>,
    #[serde(rename="originHostname")]
    origin_hostname: Option<String>,
    #[serde(rename="originIP")]
    origin_ip: Option<String>,
    #[serde(rename="userAgent")]
    user_agent: Option<String>,
    #[serde(rename="requestMethod")]
    request_method: Option<String>,
    #[serde(rename="reasonForFailure")]
    reason_for_failure: Option<String>,
    logs: Option<Vec<LogLine>>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
}

#[derive(Debug, Deserialize)]
pub struct ErrorTranslateResponse {
    #[serde(rename="errorTranslator")]
    error_translator: ErrorData
}

#[derive(Debug, Deserialize)]
pub struct VerifyIPCDNResponse {
    #[serde(rename="isCdnIP")]
    is_cdn_ip: Option<String>,
    #[serde(rename="errorString")]
    error_string: Option<String>,
    ip: Option<String>,
}