Struct dittolive_ditto::identity::OnlineWithAuthentication
source · [−]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 enableDittoCloudSync
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
sourceimpl OnlineWithAuthentication
impl OnlineWithAuthentication
sourcepub 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>
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 storageapp_id
- The unique identifier of the application, usually a UUIDv4 stringauth_event_handler
- A user created type which implements theDittoAuthenticationEventHandler
traitenable_cloud_sync
- where cloud sync should be started by defaultcustom_auth_url
- an optional custom authentication URL; default is iscloud.ditto.live
Trait Implementations
sourceimpl Identity for OnlineWithAuthentication
impl Identity for OnlineWithAuthentication
sourcefn auth_client(&self) -> Arc<BoxedAuthClient>
fn auth_client(&self) -> Arc<BoxedAuthClient>
sourcefn is_web_valid(&self) -> bool
fn is_web_valid(&self) -> bool
sourcefn is_x509_valid(&self) -> bool
fn is_x509_valid(&self) -> bool
sourcefn is_cloud_sync_enabled(&self) -> bool
fn is_cloud_sync_enabled(&self) -> bool
sourcefn auth_url(&self) -> Result<String, DittoError>
fn auth_url(&self) -> Result<String, DittoError>
sourcefn sync_url(&self) -> Result<String, DittoError>
fn sync_url(&self) -> Result<String, DittoError>
sourcefn authenticator(&self) -> Option<DittoAuthenticator>
fn authenticator(&self) -> Option<DittoAuthenticator>
DittoAuthenticator
if specified