pub struct WebSubPublisher {
pub hub_url: String,
}Expand description
Publishes topic updates to a WebSub hub and generates HTTP Link headers
for self-discovery (RFC 5988 / RFC 8288).
Fields§
§hub_url: StringThe hub to notify.
Implementations§
Source§impl WebSubPublisher
impl WebSubPublisher
Sourcepub fn publish_params(&self, topic_url: &str) -> Vec<(String, String)>
pub fn publish_params(&self, topic_url: &str) -> Vec<(String, String)>
Build the form-encoded body for a hub ping (hub.mode=publish).
Sourcepub fn publish(&self, topic_url: &str) -> Result<Vec<(String, String)>>
pub fn publish(&self, topic_url: &str) -> Result<Vec<(String, String)>>
Notify the hub that topic_url has been updated.
Returns the form-encoded parameter pairs that would be sent to the hub. Callers are responsible for making the actual HTTP POST.
Sourcepub fn link_headers(&self, topic_url: &str) -> Vec<String>
pub fn link_headers(&self, topic_url: &str) -> Vec<String>
Return the RFC 8288 Link headers a publisher should include in its
HTTP responses to allow subscriber discovery.
Link: <https://hub.example.com/>; rel="hub"
Link: <https://publisher.example.com/topic>; rel="self"Trait Implementations§
Source§impl Clone for WebSubPublisher
impl Clone for WebSubPublisher
Source§fn clone(&self) -> WebSubPublisher
fn clone(&self) -> WebSubPublisher
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for WebSubPublisher
impl RefUnwindSafe for WebSubPublisher
impl Send for WebSubPublisher
impl Sync for WebSubPublisher
impl Unpin for WebSubPublisher
impl UnsafeUnpin for WebSubPublisher
impl UnwindSafe for WebSubPublisher
Blanket Implementations§
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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>
Converts
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>
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.