pub struct GdriveBackend { /* private fields */ }Expand description
Google Drive storage backend
This backend uses OpenDAL’s Gdrive service to list files from Google Drive.
§Authentication
Requires a Google Drive access token. You can obtain one from: https://console.cloud.google.com/apis/credentials
§Example
ⓘ
use sqlite_vtable_opendal::backends::gdrive::GdriveBackend;
use sqlite_vtable_opendal::types::QueryConfig;
let backend = GdriveBackend::new("YOUR_ACCESS_TOKEN", "/");
let config = QueryConfig::default();
let files = backend.list_files(&config).await?;Implementations§
Trait Implementations§
Source§impl StorageBackend for GdriveBackend
impl StorageBackend for GdriveBackend
Source§fn list_files<'life0, 'life1, 'async_trait>(
&'life0 self,
config: &'life1 QueryConfig,
) -> Pin<Box<dyn Future<Output = Result<Vec<FileMetadata>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn list_files<'life0, 'life1, 'async_trait>(
&'life0 self,
config: &'life1 QueryConfig,
) -> Pin<Box<dyn Future<Output = Result<Vec<FileMetadata>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
List files from the storage backend according to the query configuration Read more
Source§fn backend_name(&self) -> &'static str
fn backend_name(&self) -> &'static str
Get the name of this backend (for logging/debugging)
Auto Trait Implementations§
impl Freeze for GdriveBackend
impl RefUnwindSafe for GdriveBackend
impl Send for GdriveBackend
impl Sync for GdriveBackend
impl Unpin for GdriveBackend
impl UnsafeUnpin for GdriveBackend
impl UnwindSafe for GdriveBackend
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
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