hanzo-client 8.5.156

Generated client for the Hanzo API — every service, one crate.
Documentation
/*
 * Hanzo Cloud API
 *
 * The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct S3Health {
    /// Error is why the probe is degraded, in plain words. Absent when it is not.
    #[serde(rename = "error", skip_serializing_if = "Option::is_none")]
    pub error: Option<String>,
    /// Presign is whether presigned upload and download URLs can be minted, which needs a PUBLIC endpoint on top of the credentials. False does not make the surface degraded — listing and creating still work.  NOT omitempty. On the ready path the untyped probe wrote this key unconditionally, and omitting a false one would turn what a healthy-but-presignless deployment reports from \"presign: false\" into silence — two different facts. The degraded body now carries it too, which is the one delta of typing this: the probe answers ONE shape under both of its statuses, which is what makes a single declared Out honest.
    #[serde(rename = "presign", skip_serializing_if = "Option::is_none")]
    pub presign: Option<bool>,
    /// Ready is whether this deployment can serve object operations at all: true only when admin credentials are configured.
    #[serde(rename = "ready", skip_serializing_if = "Option::is_none")]
    pub ready: Option<bool>,
    /// Service names the subsystem this probe is for. Always \"s3\".
    #[serde(rename = "service", skip_serializing_if = "Option::is_none")]
    pub service: Option<String>,
    /// Status is \"ok\" when the store is reachable in principle, \"degraded\" when it is not. It is the field to read; the HTTP status carries the same fact for a caller that only looks at the code.
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<String>,
}

impl S3Health {
    pub fn new() -> S3Health {
        S3Health {
            error: None,
            presign: None,
            ready: None,
            service: None,
            status: None,
        }
    }
}