use super::*;
#[derive(Debug, Clone, Copy, Default)]
pub struct OfflineControlPlaneClient;
impl ControlPlaneProvider for OfflineControlPlaneClient {
fn register<'a>(
&'a self,
_registration: CoreRegistration,
) -> ControlPlaneFuture<'a, CorePresence> {
Box::pin(async { Err(ControlPlaneError::Offline) })
}
fn heartbeat<'a>(
&'a self,
_request: HeartbeatRequest,
) -> ControlPlaneFuture<'a, HeartbeatResponse> {
Box::pin(async { Err(ControlPlaneError::Offline) })
}
fn discover_peers<'a>(
&'a self,
_identity: &'a CoreIdentity,
) -> ControlPlaneFuture<'a, PeerDirectory> {
Box::pin(async { Err(ControlPlaneError::Offline) })
}
fn acquire_or_renew_service_lease<'a>(
&'a self,
_identity: &'a CoreIdentity,
_service_id: &'a ServiceId,
_ttl_ms: u64,
_now_ms: u64,
) -> ControlPlaneFuture<'a, ServiceLeaderLease> {
Box::pin(async { Err(ControlPlaneError::Offline) })
}
fn release_service_lease<'a>(
&'a self,
_lease: ServiceLeaderLease,
) -> ControlPlaneFuture<'a, ()> {
Box::pin(async { Err(ControlPlaneError::Offline) })
}
}