Struct Client

Source
pub struct Client<K, S>
where K: KeyMaterial + Clone + 'static, S: UcanStore,
{ pub session: IdentifyResponse, pub sphere_identity: String, pub api_base: Url, pub author: Author<K>, pub store: S, /* private fields */ }
Expand description

A Client is a simple, portable HTTP client for the Noosphere gateway REST API. It embodies the intended usage of the REST API, which includes an opening handshake (with associated key verification) and various UCAN-authorized verbs over sphere data.

Fields§

§session: IdentifyResponse§sphere_identity: String§api_base: Url§author: Author<K>§store: S

Implementations§

Source§

impl<K, S> Client<K, S>
where K: KeyMaterial + Clone + 'static, S: UcanStore,

Source

pub async fn identify( sphere_identity: &str, api_base: &Url, author: &Author<K>, did_parser: &mut DidParser, store: S, ) -> Result<Client<K, S>>

Source

pub async fn replicate( &self, memo_version: &Cid, params: Option<&ReplicateParameters>, ) -> Result<impl Stream<Item = Result<(Cid, Vec<u8>)>>>

Replicate content from Noosphere, streaming its blocks from the configured gateway. If the gateway doesn’t have the desired content, it will look it up from other sources such as IPFS if they are available. Note that this means this call can potentially block on upstream access to an IPFS node (which, depending on the node’s network configuration and peering status, can be quite slow).

Source

pub async fn fetch( &self, params: &FetchParameters, ) -> Result<Option<(Link<MemoIpld>, impl Stream<Item = Result<(Cid, Vec<u8>)>>)>>

Source

pub async fn push( &self, push_body: &PushBody, ) -> Result<PushResponse, PushError>

Auto Trait Implementations§

§

impl<K, S> Freeze for Client<K, S>
where S: Freeze, K: Freeze,

§

impl<K, S> !RefUnwindSafe for Client<K, S>

§

impl<K, S> Send for Client<K, S>

§

impl<K, S> Sync for Client<K, S>

§

impl<K, S> Unpin for Client<K, S>
where S: Unpin, K: Unpin,

§

impl<K, S> !UnwindSafe for Client<K, S>

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> 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> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> References<RawCodec> for T

Source§

fn references<R, E>(_c: RawCodec, _r: &mut R, _set: &mut E) -> Result<(), Error>
where R: Read, E: Extend<Cid<64>>,

Scrape the references from an impl Read. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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
Source§

impl<S> ConditionalSend for S
where S: Send,

Source§

impl<S> ConditionalSync for S
where S: Send + Sync,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<S> TargetConditionalSendSync for S
where S: Send + Sync,

Source§

impl<T> TryBundleSendSync for T
where T: Send + Sync,

Source§

impl<U> UcanStoreConditionalSend for U
where U: Send,

Source§

impl<U> UcanStoreConditionalSendSync for U
where U: Send + Sync,