google_cloud_pubsub/apiv1/
conn_pool.rs1use google_cloud_gax::conn::{Channel, Environment};
2use google_cloud_gax::conn::{ConnectionManager as GRPCConnectionManager, ConnectionOptions, Error};
3
4pub const AUDIENCE: &str = "https://pubsub.googleapis.com/";
5pub const PUBSUB: &str = "pubsub.googleapis.com";
6pub const SCOPES: [&str; 2] = [
7 "https://www.googleapis.com/auth/cloud-platform",
8 "https://www.googleapis.com/auth/pubsub",
9];
10
11#[derive(Debug)]
12pub struct ConnectionManager {
13 inner: GRPCConnectionManager,
14}
15
16impl ConnectionManager {
17 pub async fn new(
18 pool_size: usize,
19 domain: &str,
20 environment: &Environment,
21 conn_options: &ConnectionOptions,
22 ) -> Result<Self, Error> {
23 Ok(ConnectionManager {
24 inner: GRPCConnectionManager::new(pool_size, domain, AUDIENCE, environment, conn_options).await?,
25 })
26 }
27
28 pub fn num(&self) -> usize {
29 self.inner.num()
30 }
31
32 pub fn conn(&self) -> Channel {
33 self.inner.conn()
34 }
35}