#[non_exhaustive]pub struct VacationResponse {
pub id: Id,
pub is_enabled: bool,
pub from_date: Option<UTCDate>,
pub to_date: Option<UTCDate>,
pub subject: Option<String>,
pub text_body: Option<String>,
pub html_body: Option<String>,
pub extra: Map<String, Value>,
}Expand description
Vacation-response settings for an account (RFC 8621 §8).
There is exactly one VacationResponse object per account; its id is
always the string "singleton" (RFC 8621 §8).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: IdThe object id. Always "singleton" (server-set; immutable).
is_enabled: boolWhether the vacation response is currently active.
from_date: Option<UTCDate>Start of the active window. If None, the response is effective
immediately. Only consulted when is_enabled is true.
to_date: Option<UTCDate>End of the active window. If None, the response is effective
indefinitely. Only consulted when is_enabled is true.
subject: Option<String>Subject line for the auto-reply. None means the server should
generate a suitable subject.
text_body: Option<String>Plaintext body for the auto-reply. None means the server may derive
a text part from html_body or generate a default.
html_body: Option<String>HTML body for the auto-reply. None means the server may derive an
HTML part from text_body or send a text-only response.
extra: Map<String, Value>Catch-all for vendor / site / private extension fields not covered by the typed fields above. Preserves unknown fields across deserialize/serialize round-trip per workspace extras-preservation policy (see workspace AGENTS.md).
Implementations§
Source§impl VacationResponse
impl VacationResponse
Sourcepub fn new(id: Id, is_enabled: bool) -> Self
pub fn new(id: Id, is_enabled: bool) -> Self
Construct a VacationResponse from its two required fields.
All optional fields default to None.
Trait Implementations§
Source§impl Clone for VacationResponse
impl Clone for VacationResponse
Source§impl Debug for VacationResponse
impl Debug for VacationResponse
Source§impl<'de> Deserialize<'de> for VacationResponse
impl<'de> Deserialize<'de> for VacationResponse
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for VacationResponse
impl GetObject for VacationResponse
Source§impl JmapObject for VacationResponse
impl JmapObject for VacationResponse
Source§impl PartialEq for VacationResponse
impl PartialEq for VacationResponse
Source§impl Serialize for VacationResponse
impl Serialize for VacationResponse
Source§impl SetObject for VacationResponse
RFC 8621 §8 (rfc8621.txt:4801): id is “(immutable; server-set)”; the
other properties carry no attribute.
impl SetObject for VacationResponse
RFC 8621 §8 (rfc8621.txt:4801): id is “(immutable; server-set)”; the
other properties carry no attribute.
Source§const SERVER_SET: &'static [&'static str]
const SERVER_SET: &'static [&'static str]
/set method text never accepts from a
client, on create or update, is server-set too. Read moreSource§const CLIENT_SETTABLE: &'static [&'static str]
const CLIENT_SETTABLE: &'static [&'static str]
SERVER_SET: the ones a
client may set through /set. Read moreSource§const IMMUTABLE: &'static [&'static str]
const IMMUTABLE: &'static [&'static str]
CLIENT_SETTABLE properties the spec marks “immutable”: “The
value MUST NOT change after the object is created.” (RFC 8620 §1.1).
A property the /set method text accepts on create but not on update
is immutable too. Read more