pub struct OnlineWithAuthentication { /* private fields */ }
Expand description

Run Ditto in secure production mode, logging on to Ditto Cloud or an on-premises authentication server. User permissions are centrally managed. Sync will not work until a successful login has occurred.

The only required configuration is the application’s UUID, which can be found on the Ditto portal where the app is registered.

By default cloud sync is enabled. This means the SDK will sync to a Big Peer in Ditto’s cloud when an internet connection is available. This is controlled by the enable_cloud_sync parameter. If true (default), a suitable wss:// URL will be added to the TransportConfig.

To prevent cloud sync, or to specify your own URL later, pass false.

Authentication requests are handled by Ditto’s cloud by default, configured in the portal at <https://portal.ditto.live>.

To use a different or on-premises authentication service, pass a custom HTTPS base URL as the * auth_url parameter.

Implementations§

source§

impl OnlineWithAuthentication

source

pub fn new( _ditto_root: Arc<dyn DittoRoot>, app_id: AppId, auth_event_handler: impl DittoAuthenticationEventHandler + 'static, enable_cloud_sync: bool, custom_auth_url: Option<&str> ) -> Result<Self, DittoError>

Construct an OnlineWithAuthentication Identity.

  • ditto_root: The directory containing ditto local storage
  • app_id: The unique identifier of the application, usually a UUIDv4 string
  • auth_event_handler: A user created type which implements the DittoAuthenticationEventHandler trait
  • enable_cloud_sync: whether cloud sync should be started by default
  • custom_auth_url: an optional custom authentication URL; default is is cloud.ditto.live

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
§

impl<T> CompatExt for T

§

fn compat(self) -> Compat<T>

Applies the [Compat] adapter by value. Read more
§

fn compat_ref(&self) -> Compat<&T>

Applies the [Compat] adapter by shared reference. Read more
§

fn compat_mut(&mut self) -> Compat<&mut T>

Applies the [Compat] adapter by mutable reference. Read more
source§

impl<T> FitForCBox for T

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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.

§

impl<T> ManuallyDropMut for T

§

type Ret = ManuallyDrop<T>

§

fn manually_drop_mut<'__>(&'__ mut self) -> &'__ mut ManuallyDrop<T>

source§

impl<T> To for Twhere T: ?Sized,

source§

fn to<T>(self) -> Twhere Self: Into<T>,

Converts to T by calling Into<T>::into.
source§

fn try_to<T>(self) -> Result<T, Self::Error>where Self: TryInto<T>,

Tries to convert to T by calling TryInto<T>::try_into.
source§

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

§

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 Twhere U: TryFrom<T>,

§

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

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V