1#ifndef _DITTO_DITTO_SYNC_KIT_
2#define _DITTO_DITTO_SYNC_KIT_
8#include "TransportConfig.hpp"
29 friend class ValidityListener;
41 std::string persistence_dir =
"");
55 std::shared_ptr<Authenticator>
get_auth()
const;
256 void set_android_context(JNIEnv *env, jobject context);
273 std::vector<std::string> missing_permissions()
const;
287 jobjectArray missing_permissions_jni_array()
const;
292 std::shared_ptr<Fields> fields;
294 explicit Ditto(std::shared_ptr<Fields> fields);
296 void validity_updated(
bool web_valid,
bool x509_valid)
const;
Provides access to authentication information and methods for logging on to Ditto Cloud....
Definition: Authenticator.hpp:26
The entrypoint to the Ditto SDK.
Definition: Ditto.hpp:27
static bool get_logging_enabled()
Gets whether or not logging is enabled for Ditto.
Definition: Ditto.cpp:284
TransportConfig get_transport_config() const
Returns the current transport config.
Definition: Ditto.cpp:217
void stop_sync() const
Stops all network transports.
Definition: Ditto.cpp:247
static void set_minimum_log_level(LogLevel log_level)
Sets the minimum log level at which logs should be emitted for Ditto.
Definition: Ditto.cpp:300
void set_transport_config(TransportConfig config)
Assign a new transports configuration.
Definition: Ditto.cpp:262
void run_garbage_collection() const
Removes all sync metadata for any remote peers which aren't currently connected.
Definition: Ditto.cpp:304
void disable_sync_with_v2() const
Explicitly opt-in to disabling the ability to sync with Ditto peers running any version of the SDK in...
Definition: Ditto.cpp:257
bool get_is_sync_active() const
Returns a flag indicating whether or not sync is active. Use start_sync to activate sync and stop_syn...
Definition: Ditto.cpp:221
static void set_logging_enabled(bool enabled)
Sets whether or not logging is enabled for Ditto.
Definition: Ditto.cpp:286
std::string get_app_id() const
Get the Ditto application Id.
Definition: Ditto.cpp:381
static bool get_emoji_log_level_headings_enabled()
Gets whether or not emoji log level headings are enabled for Ditto.
Definition: Ditto.cpp:290
Presence & get_presence() const
Provides access to the SDK's presence functionality.
Definition: Ditto.cpp:379
PresenceObserver observe_peers(PresenceCallback cb)
TODO.
Ditto(std::shared_ptr< Identity > identity=Identity::OfflinePlayground(), std::string persistence_dir="")
Initializes a new Ditto instance.
Definition: Ditto.cpp:97
void update_transport_config(std::function< void(TransportConfig &config)> lambda)
Convenience method to update the current transport config of the receiver.
Definition: Ditto.cpp:270
void set_offline_only_license_token(std::string license_token)
Activate an offline Ditto instance by setting a license token. You cannot initiate sync on an offline...
Definition: Ditto.cpp:192
static LogLevel get_minimum_log_level()
Gets the minimum log level at which logs will be emitted for Ditto.
Definition: Ditto.cpp:298
Store & get_store() const
Provides access to the SDK's store functionality.
Definition: Ditto.cpp:215
void start_sync() const
Starts the network transports. Ditto will connect to other devices and sync with them where appropria...
Definition: Ditto.cpp:223
std::shared_ptr< Authenticator > get_auth() const
Provides access to authentication information and methods for logging on to Ditto Cloud.
Definition: Ditto.cpp:213
std::string get_persistence_directory() const
Get the persistence directory used by Ditto to persist data.
Definition: Ditto.cpp:383
static void set_emoji_log_level_headings_enabled(bool enabled)
Sets whether or not emoji log level headings are enabled for Ditto.
Definition: Ditto.cpp:294
static std::string get_sdk_version()
Returns a string identifying the version of the Ditto SDK.
Definition: Ditto.cpp:277
static std::shared_ptr< OfflinePlaygroundIdentity > OfflinePlayground(std::string app_id="", uint64_t site_id=0)
Construct a new OfflinePlaygroundIdentity.
Definition: Identity.cpp:36
Definition: Presence.hpp:25
Provides access to Collections and a write transaction API.
Definition: Store.hpp:20
A configuration object specifying which network transports Ditto should use to sync data.
Definition: TransportConfig.hpp:256