pub(crate) struct SubsystemHost(Weak<Workspace>);Expand description
The GotifyHost the forge-connectors pump drives: a
Weak<Workspace> behind the port. The pump holds the host strongly,
so the wrapper stays the weak boundary - the workspace can drop while
the subsystem runs, and every port call degrades to a no-op then,
exactly like the per-event upgrade the pump did when it lived here.
Tuple Fields§
§0: Weak<Workspace>Implementations§
Trait Implementations§
Source§impl GotifyHost for SubsystemHost
impl GotifyHost for SubsystemHost
Source§fn app_name(&self, appid: u64) -> Option<String>
fn app_name(&self, appid: u64) -> Option<String>
The application NAME for appid via the reverse of the app index,
or None when the id isn’t known (index not yet fetched, or a new
app the server added after the last refresh).
Source§fn deliver(
&self,
subscription: &GotifySubscription,
app: &str,
message: &GotifyMessage,
)
fn deliver( &self, subscription: &GotifySubscription, app: &str, message: &GotifyMessage, )
Wrap the matched message into the notification wire shape and
dispatch it to the subscriber. This is the only place a
forge-connectors match becomes a GotifyNotification, so the
prose shape stays workspace-owned
(forge_server::envelope::detect_inbound keys on it).
Source§fn http_client(&self, timeout: Duration) -> Result<Client, String>
fn http_client(&self, timeout: Duration) -> Result<Client, String>
Source§fn subscriptions(&self) -> Vec<GotifySubscription>
fn subscriptions(&self) -> Vec<GotifySubscription>
Source§fn set_connected(&self, connected: bool)
fn set_connected(&self, connected: bool)
Auto Trait Implementations§
impl !RefUnwindSafe for SubsystemHost
impl !UnwindSafe for SubsystemHost
impl Freeze for SubsystemHost
impl Send for SubsystemHost
impl Sync for SubsystemHost
impl Unpin for SubsystemHost
impl UnsafeUnpin for SubsystemHost
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more