pub struct EventPublisher { /* private fields */ }Expand description
Publishes events to subscribers
Implementations§
Source§impl EventPublisher
impl EventPublisher
Sourcepub fn new(
subscriptions: Arc<RwLock<SubscriptionManager>>,
socket: Arc<UdpSocket>,
) -> Self
pub fn new( subscriptions: Arc<RwLock<SubscriptionManager>>, socket: Arc<UdpSocket>, ) -> Self
Create a new event publisher
Sourcepub async fn publish_event<P: PayloadWireFormat>(
&self,
service_id: u16,
instance_id: u16,
event_group_id: u16,
message: &Message<P>,
) -> Result<usize, Error>
pub async fn publish_event<P: PayloadWireFormat>( &self, service_id: u16, instance_id: u16, event_group_id: u16, message: &Message<P>, ) -> Result<usize, Error>
Publish an event to all subscribers of an event group
§Arguments
service_id- Service IDinstance_id- Instance IDevent_group_id- Event group IDmessage- The SOME/IP message to send (must be a notification/event)
Sourcepub async fn publish_raw_event(
&self,
service_id: u16,
instance_id: u16,
event_group_id: u16,
event_id: u16,
request_id: u32,
protocol_version: u8,
interface_version: u8,
payload: &[u8],
) -> Result<usize, Error>
pub async fn publish_raw_event( &self, service_id: u16, instance_id: u16, event_group_id: u16, event_id: u16, request_id: u32, protocol_version: u8, interface_version: u8, payload: &[u8], ) -> Result<usize, Error>
Publish raw event data (already serialized with E2E protection)
This is useful when you’ve already applied E2E protection to the payload
Auto Trait Implementations§
impl Freeze for EventPublisher
impl !RefUnwindSafe for EventPublisher
impl Send for EventPublisher
impl Sync for EventPublisher
impl Unpin for EventPublisher
impl UnsafeUnpin for EventPublisher
impl !UnwindSafe for EventPublisher
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