1use crate::behaviour::peer_store::store::Store;
2use crate::task::ConnexaTask;
3use libp2p::swarm::NetworkBehaviour;
4use libp2p::upnp::Event as UpnpEvent;
5use std::fmt::Debug;
6
7impl<X, C: NetworkBehaviour, S, T, K> ConnexaTask<X, C, S, T, K>
8where
9 X: Default + Send + 'static,
10 C: Send,
11 C::ToSwarm: Debug,
12 S: Store,
13{
14 pub fn process_upnp_event(&mut self, event: UpnpEvent) {
15 match event {
16 UpnpEvent::NewExternalAddr { external_addr, .. } => {
17 tracing::info!(?external_addr, "upnp external address discovered");
18 }
19 UpnpEvent::ExpiredExternalAddr { external_addr, .. } => {
20 tracing::info!(?external_addr, "upnp external address expired");
21 }
22 UpnpEvent::GatewayNotFound => {
23 tracing::warn!("upnp gateway not found");
24 }
25 UpnpEvent::NonRoutableGateway => {
26 tracing::warn!("upnp gateway is not routable");
27 }
28 }
29 }
30}