Skip to main content

Client

Struct Client 

Source
pub struct Client { /* private fields */ }
Expand description

Client for DeepStore API

Log storage and search database control plane API

Version: 0.1.0

Implementations§

Source§

impl Client

Source

pub fn new(baseurl: &str) -> Self

Create a new client.

baseurl is the base URL provided to the internal reqwest::Client, and should include a scheme and hostname, as well as port and a path stem if applicable.

Source

pub fn new_with_client(baseurl: &str, client: Client) -> Self

Construct a new client with an existing reqwest::Client, allowing more control over its configuration.

baseurl is the base URL provided to the internal reqwest::Client, and should include a scheme and hostname, as well as port and a path stem if applicable.

Source§

impl Client

Source

pub fn create_database(&self) -> CreateDatabase<'_>

Create a new database. Returns a service token (one-time only).

Sends a POST request to /databases

let response = client.create_database()
    .body(body)
    .send()
    .await;
Source

pub fn get_database(&self) -> GetDatabase<'_>

Get database information

Sends a GET request to /databases/{databaseId}

let response = client.get_database()
    .database_id(database_id)
    .send()
    .await;
Source

pub fn delete_database(&self) -> DeleteDatabase<'_>

Delete a database and all its data

Sends a DELETE request to /databases/{databaseId}

let response = client.delete_database()
    .database_id(database_id)
    .send()
    .await;
Source

pub fn commit_draft(&self) -> CommitDraft<'_>

Commit draft metadata after uploading to object storage

Sends a POST request to /databases/{databaseId}/commit-draft

let response = client.commit_draft()
    .database_id(database_id)
    .body(body)
    .send()
    .await;
Source

pub fn list_drafts(&self) -> ListDrafts<'_>

List drafts, optionally filtered by scopes from JWT

Sends a GET request to /databases/{databaseId}/drafts

let response = client.list_drafts()
    .database_id(database_id)
    .limit(limit)
    .send()
    .await;
Source

pub fn list_splits(&self) -> ListSplits<'_>

List published splits within a time range

Sends a GET request to /databases/{databaseId}/splits

let response = client.list_splits()
    .database_id(database_id)
    .end_timestamp(end_timestamp)
    .limit(limit)
    .start_timestamp(start_timestamp)
    .send()
    .await;
Source

pub fn lease_indexing_job(&self) -> LeaseIndexingJob<'_>

Lease an indexing job (lock drafts for indexing)

Sends a POST request to /databases/{databaseId}/indexing-jobs/lease

let response = client.lease_indexing_job()
    .database_id(database_id)
    .body(body)
    .send()
    .await;
Source

pub fn complete_indexing_job(&self) -> CompleteIndexingJob<'_>

Complete an indexing job

Sends a POST request to /databases/{databaseId}/indexing-jobs/{jobId}/complete

let response = client.complete_indexing_job()
    .database_id(database_id)
    .job_id(job_id)
    .body(body)
    .send()
    .await;
Source

pub fn lease_cleanup_job(&self) -> LeaseCleanupJob<'_>

Lease a draft cleanup job

Sends a POST request to /databases/{databaseId}/cleanup-jobs/lease

let response = client.lease_cleanup_job()
    .database_id(database_id)
    .body(body)
    .send()
    .await;
Source

pub fn complete_cleanup_job(&self) -> CompleteCleanupJob<'_>

Complete a draft cleanup job

Sends a POST request to /databases/{databaseId}/cleanup-jobs/{jobId}/complete

let response = client.complete_cleanup_job()
    .database_id(database_id)
    .job_id(job_id)
    .body(body)
    .send()
    .await;
Source

pub fn lease_merge_job(&self) -> LeaseMergeJob<'_>

Lease a merge job

Sends a POST request to /databases/{databaseId}/merge-jobs/lease

let response = client.lease_merge_job()
    .database_id(database_id)
    .body(body)
    .send()
    .await;
Source

pub fn complete_merge_job(&self) -> CompleteMergeJob<'_>

Complete a merge job

Sends a POST request to /databases/{databaseId}/merge-jobs/{jobId}/complete

let response = client.complete_merge_job()
    .database_id(database_id)
    .job_id(job_id)
    .body(body)
    .send()
    .await;
Source

pub fn lease_split_cleanup_job(&self) -> LeaseSplitCleanupJob<'_>

Lease a split cleanup job

Sends a POST request to /databases/{databaseId}/split-cleanup-jobs/lease

let response = client.lease_split_cleanup_job()
    .database_id(database_id)
    .body(body)
    .send()
    .await;
Source

pub fn complete_split_cleanup_job(&self) -> CompleteSplitCleanupJob<'_>

Complete a split cleanup job

Sends a POST request to /databases/{databaseId}/split-cleanup-jobs/{jobId}/complete

let response = client.complete_split_cleanup_job()
    .database_id(database_id)
    .job_id(job_id)
    .body(body)
    .send()
    .await;
Source

pub fn rotate_service_token(&self) -> RotateServiceToken<'_>

Rotate service token (platform auth only)

Sends a POST request to /databases/{databaseId}/tokens/rotate

let response = client.rotate_service_token()
    .database_id(database_id)
    .send()
    .await;
Source

pub fn revoke_service_tokens(&self) -> RevokeServiceTokens<'_>

Revoke all service tokens (platform auth only)

Sends a POST request to /databases/{databaseId}/tokens/revoke

let response = client.revoke_service_tokens()
    .database_id(database_id)
    .send()
    .await;
Source§

impl Client

Source

pub fn new_authenticated(base_url: &str, token: &str, timeout: Duration) -> Self

Create an authenticated client using a bearer token.

Trait Implementations§

Source§

impl ClientHooks for &Client

Source§

async fn pre<E>( &self, request: &mut Request, info: &OperationInfo, ) -> Result<(), Error<E>>

Runs prior to the execution of the request. This may be used to modify the request before it is transmitted.
Source§

async fn post<E>( &self, result: &Result<Response, Error>, info: &OperationInfo, ) -> Result<(), Error<E>>

Runs after completion of the request.
Source§

async fn exec( &self, request: Request, info: &OperationInfo, ) -> Result<Response, Error>

Execute the request. Note that for almost any reasonable implementation this will include code equivalent to this: Read more
Source§

impl ClientInfo<()> for Client

Source§

fn api_version() -> &'static str

Get the version of this API. Read more
Source§

fn baseurl(&self) -> &str

Get the base URL to which requests are made.
Source§

fn client(&self) -> &Client

Get the internal reqwest::Client used to make requests.
Source§

fn inner(&self) -> &()

Get the inner value of type T if one is specified.
Source§

impl Clone for Client

Source§

fn clone(&self) -> Client

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Client

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more