use std::time::Duration;
use harmos_runtime::operations::{OperationPolicy, RestartPolicy, RetryPolicy, Visibility};
pub const POLICY: OperationPolicy = OperationPolicy {
timeout: Duration::from_secs(10),
attempt_timeout: Duration::from_secs(10),
retries: RetryPolicy::Never,
restart: RestartPolicy::Never,
};
#[harmos_runtime::message]
#[derive(Clone, PartialEq)]
pub struct Step {
pub phase: u64,
}
#[harmos_runtime::message]
#[harmos_runtime::operation(
id = "process.graph.read",
version = 1,
policy = POLICY,
response = Step,
visibility = Visibility::Shared,
)]
#[derive(Clone, PartialEq)]
pub struct Read {
pub phase: u64,
}
#[harmos_runtime::message]
#[harmos_runtime::operation(
id = "process.graph.probe",
version = 1,
policy = POLICY,
response = Step,
visibility = Visibility::Host,
)]
#[derive(Clone, PartialEq)]
pub struct Probe {
pub phase: u64,
}
#[harmos_runtime::catalog]
pub enum Readings {
Read(Read),
}
#[harmos_runtime::catalog]
pub enum Queries {
Probe(Probe),
}