Other Classes
The following classes are available globally.
-
Undocumented
See moreDeclaration
Objective-C
@interface DITAWDLConfig : NSObject<NSCopying, NSMutableCopying> { @protected BOOL _enabled; } @property (nonatomic, readonly, getter = isEnabled) BOOL enabled; - (instancetype)initWithDITAWDLConfig:(DITAWDLConfig *)config; - (instancetype)initWithEnabled:(BOOL)enabled NS_DESIGNATED_INITIALIZER; - (BOOL)isEqualToDITAWDLConfig:(DITAWDLConfig *)config; @end
-
A representation of the events that can occur in relation to an attachment fetch.
There are three different attachment fetch events:
Completed
,Progress
, orDeleted
.There will be at most one
Completed
orDeleted
event per attachment fetch. There can be manyProgress
events delivered for each attachment fetch.Updates relating to an attachment fetch are delivered by registering a
See moreDITAttachmentFetcher
through a call tofetchAttachment
on aDITCollection
instance.Declaration
Objective-C
@interface DITAttachmentFetchEvent : NSObject
-
An attachment fetch event used when the attachment’s download has completed.
See moreDeclaration
Objective-C
@interface DITAttachmentFetchEventCompleted : DITAttachmentFetchEvent
-
An attachment fetch event used when the attachment’s download progressed but is not yet complete.
See moreDeclaration
Objective-C
@interface DITAttachmentFetchEventProgress : DITAttachmentFetchEvent
-
An attachment fetch event used when the attachment is deleted.
Declaration
Objective-C
@interface DITAttachmentFetchEventDeleted : DITAttachmentFetchEvent
-
Undocumented
See moreDeclaration
Objective-C
@interface DITBluetoothLEConfig : NSObject<NSCopying, NSMutableCopying> { @protected BOOL _enabled; } @property (nonatomic, readonly, getter = isEnabled) BOOL enabled; - (instancetype)initWithDITBluetoothLEConfig:(DITBluetoothLEConfig *)config; - (instancetype)initWithEnabled:(BOOL)enabled NS_DESIGNATED_INITIALIZER; - (BOOL)isEqualToDITBluetoothLEConfig:(DITBluetoothLEConfig *)config; @end
-
Specific servers that Ditto should attempt to connect to.
TCP servers are specified as “host:port”. Websocket URLs take the form “wss://hydra.ditto.live”.
Please refer to the documentation on Ditto’s website for configuring cloud or client/server scenarios.
See moreDeclaration
Objective-C
@interface DITConnect : NSObject <NSCopying, NSMutableCopying> { NSSet<NSString *> *_tcpServers; NSSet<NSString *> *_websocketURLs; }
-
An identifier for a
DITDocument
.Each
See moreDITDocumentID
represents a unique identifier for a document.Declaration
Objective-C
@interface DITDocumentID : NSObject <NSCopying>
-
Provides an interface to specify a path to a key in a document ID that you can then call a function on to get the value at the specified key as a specific type. You obtain a
See moreDITDocumentIDPath
by subscripting aDITDocumentID
and you can then further subscript aDITDocumentIDPath
to further specify the key of the document ID that you want to get the value of. This is only really useful if you’re working with a document ID whose underlying value is a dictionary or an array.Declaration
Objective-C
@interface DITDocumentIDPath : NSObject
-
Undocumented
See moreDeclaration
Objective-C
@interface DITHTTPListenConfig : NSObject<NSCopying, NSMutableCopying> { @protected BOOL _enabled; @protected NSString *_interfaceIp; @protected uint16_t _port; @protected NSString *_staticContentPath; @protected BOOL _websocketSync; @protected NSString *_tlsKeyPath; @protected NSString *_tlsCertificatePath; } @property (nonatomic, readonly, getter = isEnabled) BOOL enabled; /** IP interface to bind to. [::] by default. */ @property (nonatomic, readonly) NSString *interfaceIp; /** Listening port. 80 by default. */ @property (nonatomic, readonly) uint16_t port; /** An absolute path to a directory of static HTTP content that should be served by this device. If nil (default), this feature is disabled. */ @property (nonatomic, readonly, nullable) NSString *staticContentPath; /** If YES (default), peers can connect over websocket to sync with this peer. This feature has security implications and should only be used together with documentation on Ditto's website. */ @property (nonatomic, readonly) BOOL websocketSync; /** An absolute path to the PEM-formatted private key for HTTPS. Must be set together with tlsCertificatePath. If nil, the server runs as unencrypted HTTP. */ @property (nonatomic, readonly, nullable) NSString *tlsKeyPath; /** An absolute path to the PEM-formatted certificate for HTTPS. Must be set together with tlsKeyPath. If nil, the server runs as unencrypted HTTP. */ @property (nonatomic, readonly, nullable) NSString *tlsCertificatePath; - (instancetype)initWithDITHTTPListenConfig:(DITHTTPListenConfig *)config; - (instancetype)initWithEnabled:(BOOL)enabled interfaceIp:(NSString *)interfaceIp port:(uint16_t)port staticContentPath:(NSString * __nullable)staticContentPath websocketSync:(BOOL)websocketSync tlsKeyPath:(NSString * __nullable)tlsKeyPath tlsCertificatePath:(NSString * __nullable)tlsCertificatePath NS_DESIGNATED_INITIALIZER; - (BOOL)isEqualToDITHTTPListenConfig:(DITHTTPListenConfig *)config; @end
-
Undocumented
See moreDeclaration
Objective-C
@interface DITLANConfig : NSObject<NSCopying, NSMutableCopying> { @protected BOOL _enabled; } @property (nonatomic, readonly, getter = isEnabled) BOOL enabled; - (instancetype)initWithDITLANConfig:(DITLANConfig *)config; - (instancetype)initWithEnabled:(BOOL)enabled NS_DESIGNATED_INITIALIZER; - (BOOL)isEqualToDITLANConfig:(DITLANConfig *)config; @end
-
Configure this device as a Ditto server. Disabled by default.
This is advanced usage that is not needed in most situations. Please refer to the documentation on Ditto’s website for scenarios and example configurations.
See moreDeclaration
Objective-C
@interface DITListen : NSObject <NSCopying, NSMutableCopying> { DITTCPListenConfig *_tcp; DITHTTPListenConfig *_http; }
-
Class with static methods to customize the logging behavior from Ditto.
See moreDeclaration
Objective-C
@interface DITLogger : NSObject
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutableAWDLConfig : DITAWDLConfig @property (nonatomic, readwrite, getter = isEnabled) BOOL enabled; @end
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutableBluetoothLEConfig : DITBluetoothLEConfig @property (nonatomic, readwrite, getter = isEnabled) BOOL enabled; @end
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutableConnect : DITConnect
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutableHTTPListenConfig : DITHTTPListenConfig @property (nonatomic, readwrite, getter = isEnabled) BOOL enabled; /** IP interface to bind to. [::] by default. */ @property (nonatomic, readwrite, copy) NSString *interfaceIp; /** Listening port. 80 by default. */ @property (nonatomic, readwrite) uint16_t port; /** An absolute path to a directory of static HTTP content that should be served by this device. If nil (default), this feature is disabled. */ @property (nonatomic, readwrite, copy, nullable) NSString *staticContentPath; /** If YES (default), peers can connect over websocket to sync with this peer. This feature has security implications and should only be used together with documentation on Ditto's website. */ @property (nonatomic, readwrite) BOOL websocketSync; /** An absolute path to the PEM-formatted private key for HTTPS. Must be set together with tlsCertificatePath. If nil (default), the server runs as unencrypted HTTP. */ @property (nonatomic, readwrite, copy, nullable) NSString *tlsKeyPath; /** An absolute path to the PEM-formatted certificate for HTTPS. Must be set together with tlsKeyPath. If nil (default), the server runs as unencrypted HTTP. */ @property (nonatomic, readwrite, copy, nullable) NSString *tlsCertificatePath; @end
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutableLANConfig : DITLANConfig @property (nonatomic, readwrite, getter = isEnabled) BOOL enabled; @end
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutablePeerToPeer : DITPeerToPeer
-
Undocumented
See moreDeclaration
Objective-C
@interface DITMutableTCPListenConfig : DITTCPListenConfig @property (nonatomic, readwrite, getter = isEnabled) BOOL enabled; /** IP interface to bind to. [::] by default. */ @property (nonatomic, readwrite, copy) NSString *interfaceIp; /** Listening port. 4040 by default. */ @property (nonatomic, readwrite) uint16_t port; @end
-
A configuration object specifying which network transports Ditto should use to sync data.
A DITDitto object comes with a default transport configuration where all available peer-to-peer transports are enabled. You can customize this by initializing a DITMutableTransportConfig, adjusting its properties, and supplying it to setTransportConfig: on DITDitto.
When you initialize a DITMutableTransportConfig yourself it starts with all transports disabled. You must enable each one directly.
Peer-to-peer transports will automatically discover peers in the vicinity and create connections without any configuration. These are configured inside the peerToPeer property. To turn each one on, set its enabled property to YES.
To connect to a peer at a known location, such as a Ditto Big Peer, add its address inside the connect configuration. These are either “host:port” strings for raw TCP sync, or a “wss://…” URL for websockets.
The listen configurations are for specific less common data sync scenarios. Please read the documentation on the Ditto website for examples. Incorrect use of listen can result in insecure configurations.
See moreDeclaration
Objective-C
@interface DITMutableTransportConfig : DITTransportConfig
-
Configuration of peer-to-peer transports, which are able to discover and connect to peers on their own.
For more information refer to the documentation for DITTransportConfig.
See moreDeclaration
Objective-C
@interface DITPeerToPeer : NSObject <NSCopying, NSMutableCopying> { DITBluetoothLEConfig *_bluetoothLe; DITLANConfig *_lan; DITAWDLConfig *_awdl; }
-
Undocumented
See moreDeclaration
Objective-C
@interface DITTCPListenConfig : NSObject<NSCopying, NSMutableCopying> { @protected BOOL _enabled; @protected NSString *_interfaceIp; @protected uint16_t _port; } @property (nonatomic, readonly, getter = isEnabled) BOOL enabled; /** IP interface to bind to. [::] by default. */ @property (nonatomic, readonly) NSString *interfaceIp; /** Listening port. 4040 by default. */ @property (nonatomic, readonly) uint16_t port; - (instancetype)initWithDITTCPListenConfig:(DITTCPListenConfig *)config; - (instancetype)initWithEnabled:(BOOL)enabled interfaceIp:(NSString *)interfaceIp port:(uint16_t)port NS_DESIGNATED_INITIALIZER; - (BOOL)isEqualToDITTCPListenConfig:(DITTCPListenConfig *)config; @end
-
A configuration object specifying which network transports Ditto should use to sync data.
A DITDitto object comes with a default transport configuration where all available peer-to-peer transports are enabled. You can customize this by initializing a DITMutableTransportConfig, adjusting its properties, and supplying it to setTransportConfig: on DITDitto.
When you initialize a DITMutableTransportConfig yourself it starts with all transports disabled. You must enable each one directly.
Peer-to-peer transports will automatically discover peers in the vicinity and create connections without any configuration. These are configured inside the peerToPeer property. To turn each one on, set its enabled property to YES.
To connect to a peer at a known location, such as a Ditto Big Peer, add its address inside the connect configuration. These are either “host:port” strings for raw TCP sync, or a “wss://…” URL for websockets.
The listen configurations are for specific less common data sync scenarios. Please read the documentation on the Ditto website for examples. Incorrect use of listen can result in insecure configurations.
See moreDeclaration
Objective-C
@interface DITTransportConfig : NSObject <NSCopying, NSMutableCopying> { DITPeerToPeer *_peerToPeer; DITConnect *_connect; DITListen *_listen; }
-
An update result when the update result’s type is
See moreset
.Declaration
Objective-C
@interface DITUpdateResultSet : DITUpdateResult
-
An update result when the update result’s type is
removed
.Declaration
Objective-C
@interface DITUpdateResultRemoved : DITUpdateResult
-
An update result when the update result’s type is
replacedWithCounter
.Declaration
Objective-C
@interface DITUpdateResultReplacedWithCounter : DITUpdateResult
-
An update result when the update result’s type is
See moreincremented
.Declaration
Objective-C
@interface DITUpdateResultIncremented : DITUpdateResult
-
An update result when the update result’s type is
See morepushed
.Declaration
Objective-C
@interface DITUpdateResultPushed : DITUpdateResult
-
An update result when the update result’s type is
See morepopped
.Declaration
Objective-C
@interface DITUpdateResultPopped : DITUpdateResult
-
An update result when the update result’s type is
See moreinserted
.Declaration
Objective-C
@interface DITUpdateResultInserted : DITUpdateResult
-
Represents the write transaction result that will be the value of a
DittoWriteTransactionResult
when itstype
isinserted
andasInserted
is called on it.Declaration
Objective-C
@interface DITWriteTransactionResultInserted : DITWriteTransactionResult
-
Represents the write transaction result that will be the value of a
DittoWriteTransactionResult
when itstype
isremoved
andasRemoved
is called on it.Declaration
Objective-C
@interface DITWriteTransactionResultRemoved : DITWriteTransactionResult
-
Represents the write transaction result that will be the value of a
DittoWriteTransactionResult
when itstype
isevicted
andasEvicted
is called on it.Declaration
Objective-C
@interface DITWriteTransactionResultEvicted : DITWriteTransactionResult
-
Represents the write transaction result that will be the value of a
DittoWriteTransactionResult
when itstype
isupdated
andasUpdated
is called on it.Declaration
Objective-C
@interface DITWriteTransactionResultUpdated : DITWriteTransactionResult