pub struct FlightSqlServiceClient<T> {
token: Option<String>,
headers: HashMap<String, String>,
flight_client: FlightServiceClient<T>,
}
Expand description
A FlightSQLServiceClient is an endpoint for retrieving or storing Arrow data by FlightSQL protocol.
Fields§
§token: Option<String>
§headers: HashMap<String, String>
§flight_client: FlightServiceClient<T>
Implementations§
Source§impl FlightSqlServiceClient<Channel>
impl FlightSqlServiceClient<Channel>
A FlightSql protocol client that can run queries against FlightSql servers This client is in the “experimental” stage. It is not guaranteed to follow the spec in all instances. Github issues are welcomed.
Sourcepub fn new(channel: Channel) -> Self
pub fn new(channel: Channel) -> Self
Creates a new FlightSql client that connects to a server over an arbitrary tonic Channel
Sourcepub fn new_from_inner(inner: FlightServiceClient<Channel>) -> Self
pub fn new_from_inner(inner: FlightServiceClient<Channel>) -> Self
Creates a new higher level client with the provided lower level client
Sourcepub fn inner(&self) -> &FlightServiceClient<Channel>
pub fn inner(&self) -> &FlightServiceClient<Channel>
Return a reference to the underlying FlightServiceClient
Sourcepub fn inner_mut(&mut self) -> &mut FlightServiceClient<Channel>
pub fn inner_mut(&mut self) -> &mut FlightServiceClient<Channel>
Return a mutable reference to the underlying FlightServiceClient
Sourcepub fn into_inner(self) -> FlightServiceClient<Channel>
pub fn into_inner(self) -> FlightServiceClient<Channel>
Consume this client and return the underlying FlightServiceClient
Sourcepub fn clear_token(&mut self)
pub fn clear_token(&mut self)
Clear the auth token.
Sourcepub fn token(&self) -> Option<&String>
pub fn token(&self) -> Option<&String>
Share the bearer token with potentially different DoGet
clients
Sourcepub fn set_header(&mut self, key: impl Into<String>, value: impl Into<String>)
pub fn set_header(&mut self, key: impl Into<String>, value: impl Into<String>)
Set header value.
async fn get_flight_info_for_command<M: ProstMessageExt>( &mut self, cmd: M, ) -> Result<FlightInfo, ArrowError>
Sourcepub async fn execute(
&mut self,
query: String,
transaction_id: Option<Bytes>,
) -> Result<FlightInfo, ArrowError>
pub async fn execute( &mut self, query: String, transaction_id: Option<Bytes>, ) -> Result<FlightInfo, ArrowError>
Execute a query on the server.
Sourcepub async fn handshake(
&mut self,
username: &str,
password: &str,
) -> Result<Bytes, ArrowError>
pub async fn handshake( &mut self, username: &str, password: &str, ) -> Result<Bytes, ArrowError>
Perform a handshake
with the server, passing credentials and establishing a session.
If the server returns an “authorization” header, it is automatically parsed and set as a token for future requests. Any other data returned by the server in the handshake response is returned as a binary blob.
Sourcepub async fn execute_update(
&mut self,
query: String,
transaction_id: Option<Bytes>,
) -> Result<i64, ArrowError>
pub async fn execute_update( &mut self, query: String, transaction_id: Option<Bytes>, ) -> Result<i64, ArrowError>
Execute a update query on the server, and return the number of records affected
Sourcepub async fn execute_ingest<S>(
&mut self,
command: CommandStatementIngest,
stream: S,
) -> Result<i64, ArrowError>
pub async fn execute_ingest<S>( &mut self, command: CommandStatementIngest, stream: S, ) -> Result<i64, ArrowError>
Execute a bulk ingest on the server and return the number of records added
Sourcepub async fn get_catalogs(&mut self) -> Result<FlightInfo, ArrowError>
pub async fn get_catalogs(&mut self) -> Result<FlightInfo, ArrowError>
Request a list of catalogs as tabular FlightInfo results
Sourcepub async fn get_db_schemas(
&mut self,
request: CommandGetDbSchemas,
) -> Result<FlightInfo, ArrowError>
pub async fn get_db_schemas( &mut self, request: CommandGetDbSchemas, ) -> Result<FlightInfo, ArrowError>
Request a list of database schemas as tabular FlightInfo results
Sourcepub async fn do_get(
&mut self,
ticket: impl IntoRequest<Ticket>,
) -> Result<FlightRecordBatchStream, ArrowError>
pub async fn do_get( &mut self, ticket: impl IntoRequest<Ticket>, ) -> Result<FlightRecordBatchStream, ArrowError>
Given a flight ticket, request to be sent the stream. Returns record batch stream reader
Sourcepub async fn do_put(
&mut self,
request: impl IntoStreamingRequest<Message = FlightData>,
) -> Result<Streaming<PutResult>, ArrowError>
pub async fn do_put( &mut self, request: impl IntoStreamingRequest<Message = FlightData>, ) -> Result<Streaming<PutResult>, ArrowError>
Push a stream to the flight service associated with a particular flight stream.
Sourcepub async fn do_action(
&mut self,
request: impl IntoRequest<Action>,
) -> Result<Streaming<Result>, ArrowError>
pub async fn do_action( &mut self, request: impl IntoRequest<Action>, ) -> Result<Streaming<Result>, ArrowError>
DoAction allows a flight client to do a specific action against a flight service
Sourcepub async fn get_tables(
&mut self,
request: CommandGetTables,
) -> Result<FlightInfo, ArrowError>
pub async fn get_tables( &mut self, request: CommandGetTables, ) -> Result<FlightInfo, ArrowError>
Request a list of tables.
Sourcepub async fn get_primary_keys(
&mut self,
request: CommandGetPrimaryKeys,
) -> Result<FlightInfo, ArrowError>
pub async fn get_primary_keys( &mut self, request: CommandGetPrimaryKeys, ) -> Result<FlightInfo, ArrowError>
Request the primary keys for a table.
Sourcepub async fn get_exported_keys(
&mut self,
request: CommandGetExportedKeys,
) -> Result<FlightInfo, ArrowError>
pub async fn get_exported_keys( &mut self, request: CommandGetExportedKeys, ) -> Result<FlightInfo, ArrowError>
Retrieves a description about the foreign key columns that reference the primary key columns of the given table.
Sourcepub async fn get_imported_keys(
&mut self,
request: CommandGetImportedKeys,
) -> Result<FlightInfo, ArrowError>
pub async fn get_imported_keys( &mut self, request: CommandGetImportedKeys, ) -> Result<FlightInfo, ArrowError>
Retrieves the foreign key columns for the given table.
Sourcepub async fn get_cross_reference(
&mut self,
request: CommandGetCrossReference,
) -> Result<FlightInfo, ArrowError>
pub async fn get_cross_reference( &mut self, request: CommandGetCrossReference, ) -> Result<FlightInfo, ArrowError>
Retrieves a description of the foreign key columns in the given foreign key table that reference the primary key or the columns representing a unique constraint of the parent table (could be the same or a different table).
Sourcepub async fn get_table_types(&mut self) -> Result<FlightInfo, ArrowError>
pub async fn get_table_types(&mut self) -> Result<FlightInfo, ArrowError>
Request a list of table types.
Sourcepub async fn get_sql_info(
&mut self,
sql_infos: Vec<SqlInfo>,
) -> Result<FlightInfo, ArrowError>
pub async fn get_sql_info( &mut self, sql_infos: Vec<SqlInfo>, ) -> Result<FlightInfo, ArrowError>
Request a list of SQL information.
Sourcepub async fn get_xdbc_type_info(
&mut self,
request: CommandGetXdbcTypeInfo,
) -> Result<FlightInfo, ArrowError>
pub async fn get_xdbc_type_info( &mut self, request: CommandGetXdbcTypeInfo, ) -> Result<FlightInfo, ArrowError>
Request XDBC SQL information.
Sourcepub async fn prepare(
&mut self,
query: String,
transaction_id: Option<Bytes>,
) -> Result<PreparedStatement<Channel>, ArrowError>
pub async fn prepare( &mut self, query: String, transaction_id: Option<Bytes>, ) -> Result<PreparedStatement<Channel>, ArrowError>
Create a prepared statement object.
Sourcepub async fn begin_transaction(&mut self) -> Result<Bytes, ArrowError>
pub async fn begin_transaction(&mut self) -> Result<Bytes, ArrowError>
Request to begin a transaction.
Sourcepub async fn end_transaction(
&mut self,
transaction_id: Bytes,
action: EndTransaction,
) -> Result<(), ArrowError>
pub async fn end_transaction( &mut self, transaction_id: Bytes, action: EndTransaction, ) -> Result<(), ArrowError>
Request to commit/rollback a transaction.
Sourcepub async fn close(&mut self) -> Result<(), ArrowError>
pub async fn close(&mut self) -> Result<(), ArrowError>
Explicitly shut down and clean up the client.
fn set_request_headers<T>( &self, req: Request<T>, ) -> Result<Request<T>, ArrowError>
Trait Implementations§
Source§impl<T: Clone> Clone for FlightSqlServiceClient<T>
impl<T: Clone> Clone for FlightSqlServiceClient<T>
Source§fn clone(&self) -> FlightSqlServiceClient<T>
fn clone(&self) -> FlightSqlServiceClient<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl<T> !Freeze for FlightSqlServiceClient<T>
impl<T> RefUnwindSafe for FlightSqlServiceClient<T>where
T: RefUnwindSafe,
impl<T> Send for FlightSqlServiceClient<T>where
T: Send,
impl<T> Sync for FlightSqlServiceClient<T>where
T: Sync,
impl<T> Unpin for FlightSqlServiceClient<T>where
T: Unpin,
impl<T> UnwindSafe for FlightSqlServiceClient<T>where
T: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request