consulrs 0.1.0

An asynchronous Rust client library for the Hashicorp Consul API.
Documentation
use derive_builder::Builder;
use serde::{Deserialize, Serialize};
use serde_with::skip_serializing_none;

#[skip_serializing_none]
#[derive(Builder, Clone, Debug, Default, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
#[builder(setter(into, strip_option), default)]
pub struct ServiceCheck {
    #[serde(rename = "ID")]
    pub id: Option<String>,
    pub namespace: Option<String>,
}

#[skip_serializing_none]
#[derive(Builder, Clone, Debug, Default, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
#[builder(setter(into, strip_option), default)]
pub struct SessionEntry {
    pub behavior: Option<String>,
    pub create_index: Option<u64>,
    #[serde(rename = "ID")]
    pub id: Option<String>,
    pub lock_delay: Option<u64>,
    pub name: Option<String>,
    pub namespace: Option<String>,
    pub node: Option<String>,
    pub node_checks: Option<Vec<String>>,
    pub service_checks: Option<Vec<ServiceCheck>>,
    #[serde(rename = "TTL")]
    pub ttl: Option<String>,
}