Struct google_drive2::api::DriveHub
source · pub struct DriveHub<S> {
pub client: Client<S, Body>,
pub auth: Box<dyn GetToken>,
/* private fields */
}
Expand description
Central instance to access all DriveHub related resource activities
§Examples
Instantiate a new hub
extern crate hyper;
extern crate hyper_rustls;
extern crate google_drive2 as drive2;
use drive2::api::File;
use drive2::{Result, Error};
use std::default::Default;
use drive2::{DriveHub, oauth2, hyper, hyper_rustls, chrono, FieldMask};
// Get an ApplicationSecret instance by some means. It contains the `client_id` and
// `client_secret`, among other things.
let secret: oauth2::ApplicationSecret = Default::default();
// Instantiate the authenticator. It will choose a suitable authentication flow for you,
// unless you replace `None` with the desired Flow.
// Provide your own `AuthenticatorDelegate` to adjust the way it operates and get feedback about
// what's going on. You probably want to bring in your own `TokenStorage` to persist tokens and
// retrieve them from storage.
let auth = oauth2::InstalledFlowAuthenticator::builder(
secret,
oauth2::InstalledFlowReturnMethod::HTTPRedirect,
).build().await.unwrap();
let mut hub = DriveHub::new(hyper::Client::builder().build(hyper_rustls::HttpsConnectorBuilder::new().with_native_roots().https_or_http().enable_http1().build()), auth);
// As the method needs a request, you would usually fill it with the desired information
// into the respective structure. Some of the parts shown here might not be applicable !
// Values shown here are possibly random and not representative !
let mut req = File::default();
// You can configure optional parameters by calling the respective setters at will, and
// execute the final call using `doit()`.
// Values shown here are possibly random and not representative !
let result = hub.files().patch(req, "fileId")
.use_content_as_indexable_text(false)
.update_viewed_date(false)
.timed_text_track_name("duo")
.timed_text_language("vero")
.supports_team_drives(false)
.supports_all_drives(false)
.set_modified_date(true)
.remove_parents("vero")
.pinned(true)
.ocr_language("Lorem")
.ocr(true)
.new_revision(false)
.modified_date_behavior("accusam")
.include_permissions_for_view("takimata")
.include_labels("consetetur")
.enforce_single_parent(false)
.convert(false)
.add_parents("amet.")
.doit().await;
match result {
Err(e) => match e {
// The Error enum provides details about what exactly happened.
// You can also just use its `Debug`, `Display` or `Error` traits
Error::HttpError(_)
|Error::Io(_)
|Error::MissingAPIKey
|Error::MissingToken(_)
|Error::Cancelled
|Error::UploadSizeLimitExceeded(_, _)
|Error::Failure(_)
|Error::BadRequest(_)
|Error::FieldClash(_)
|Error::JsonDecodeError(_, _) => println!("{}", e),
},
Ok(res) => println!("Success: {:?}", res),
}
Fields§
§client: Client<S, Body>
§auth: Box<dyn GetToken>
Implementations§
source§impl<'a, S> DriveHub<S>
impl<'a, S> DriveHub<S>
pub fn new<A: 'static + GetToken>( client: Client<S, Body>, auth: A ) -> DriveHub<S>
pub fn about(&'a self) -> AboutMethods<'a, S>
pub fn apps(&'a self) -> AppMethods<'a, S>
pub fn changes(&'a self) -> ChangeMethods<'a, S>
pub fn channels(&'a self) -> ChannelMethods<'a, S>
pub fn children(&'a self) -> ChildMethods<'a, S>
pub fn comments(&'a self) -> CommentMethods<'a, S>
pub fn drives(&'a self) -> DriveMethods<'a, S>
pub fn files(&'a self) -> FileMethods<'a, S>
pub fn parents(&'a self) -> ParentMethods<'a, S>
pub fn permissions(&'a self) -> PermissionMethods<'a, S>
pub fn properties(&'a self) -> PropertyMethods<'a, S>
pub fn replies(&'a self) -> ReplyMethods<'a, S>
pub fn revisions(&'a self) -> RevisionMethods<'a, S>
pub fn teamdrives(&'a self) -> TeamdriveMethods<'a, S>
sourcepub fn user_agent(&mut self, agent_name: String) -> String
pub fn user_agent(&mut self, agent_name: String) -> String
Set the user-agent header field to use in all requests to the server.
It defaults to google-api-rust-client/5.0.4
.
Returns the previously set user-agent.
Trait Implementations§
Auto Trait Implementations§
impl<S> !RefUnwindSafe for DriveHub<S>
impl<S> Send for DriveHub<S>where
S: Send,
impl<S> Sync for DriveHub<S>where
S: Sync,
impl<S> Unpin for DriveHub<S>where
S: Unpin,
impl<S> !UnwindSafe for DriveHub<S>
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