pub struct Connection { /* private fields */ }Expand description
Connection pool Minimal session will have at least 2 requests - login and query
Implementations§
Source§impl Connection
impl Connection
pub fn new() -> Result<Self, ConnectionError>
Sourcepub fn new_with_middware(client: ClientWithMiddleware) -> Self
pub fn new_with_middware(client: ClientWithMiddleware) -> Self
Allow a user to provide their own middleware
Users can provide their own middleware to the connection like this:
use snowflake_api::connection::Connection;
let mut client = Connection::default_client_builder();
// modify the client builder here
let connection = Connection::new_with_middware(client.unwrap().build());This is not intended to be called directly, but is used by SnowflakeApiBuilder::with_client
pub fn default_client_builder() -> Result<ClientBuilder, ConnectionError>
Sourcepub async fn request<R: DeserializeOwned>(
&self,
query_type: QueryType,
account_identifier: &str,
extra_get_params: &[(&str, &str)],
auth: Option<&str>,
body: impl Serialize,
) -> Result<R, ConnectionError>
pub async fn request<R: DeserializeOwned>( &self, query_type: QueryType, account_identifier: &str, extra_get_params: &[(&str, &str)], auth: Option<&str>, body: impl Serialize, ) -> Result<R, ConnectionError>
Perform request of given query type with extra body or parameters
pub async fn get_chunk( &self, url: &str, headers: &HashMap<String, String>, ) -> Result<Bytes, ConnectionError>
Auto Trait Implementations§
impl !RefUnwindSafe for Connection
impl !UnwindSafe for Connection
impl Freeze for Connection
impl Send for Connection
impl Sync for Connection
impl Unpin for Connection
impl UnsafeUnpin for Connection
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
impl<T> ErasedDestructor for Twhere
T: 'static,
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 more