pub enum ConnectionCache {
Quic(Arc<ConnectionCache<QuicPool, QuicConnectionManager, QuicConfig>>),
Udp(Arc<ConnectionCache<UdpPool, UdpConnectionManager, UdpConfig>>),
}
Expand description
A thin wrapper over connection-cache/ConnectionCache to ease construction of the ConnectionCache for code dealing both with udp and quic. For the scenario only using udp or quic, use connection-cache/ConnectionCache directly.
Variants§
Quic(Arc<ConnectionCache<QuicPool, QuicConnectionManager, QuicConfig>>)
Udp(Arc<ConnectionCache<UdpPool, UdpConnectionManager, UdpConfig>>)
Implementations§
source§impl ConnectionCache
impl ConnectionCache
pub fn new(name: &'static str) -> Self
sourcepub fn new_quic(name: &'static str, connection_pool_size: usize) -> Self
pub fn new_quic(name: &'static str, connection_pool_size: usize) -> Self
Create a quic connection_cache
sourcepub fn new_with_client_options(
name: &'static str,
connection_pool_size: usize,
client_endpoint: Option<Endpoint>,
cert_info: Option<(&Keypair, IpAddr)>,
stake_info: Option<(&Arc<RwLock<StakedNodes>>, &Pubkey)>
) -> Self
pub fn new_with_client_options( name: &'static str, connection_pool_size: usize, client_endpoint: Option<Endpoint>, cert_info: Option<(&Keypair, IpAddr)>, stake_info: Option<(&Arc<RwLock<StakedNodes>>, &Pubkey)> ) -> Self
Create a quic connection_cache with more client options
pub fn protocol(&self) -> Protocol
pub fn update_client_certificate( &mut self, _keypair: &Keypair, _ipaddr: IpAddr ) -> Result<(), Box<dyn Error>>
👎Deprecated since 1.15.0: This method does not do anything. Please use
new_with_client_options
instead to set the client certificate.pub fn set_staked_nodes( &mut self, _staked_nodes: &Arc<RwLock<StakedNodes>>, _client_pubkey: &Pubkey )
👎Deprecated since 1.15.0: This method does not do anything. Please use
new_with_client_options
instead to set staked nodes information.pub fn with_udp(name: &'static str, connection_pool_size: usize) -> Self
pub fn use_quic(&self) -> bool
pub fn get_connection(&self, addr: &SocketAddr) -> BlockingClientConnection
pub fn get_nonblocking_connection( &self, addr: &SocketAddr ) -> NonblockingClientConnection
Trait Implementations§
source§impl NotifyKeyUpdate for ConnectionCache
impl NotifyKeyUpdate for ConnectionCache
Auto Trait Implementations§
impl !RefUnwindSafe for ConnectionCache
impl Send for ConnectionCache
impl Sync for ConnectionCache
impl Unpin for ConnectionCache
impl !UnwindSafe for ConnectionCache
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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