Class SyncServerBuilder
- java.lang.Object
-
- io.objectbox.sync.server.SyncServerBuilder
-
public final class SyncServerBuilder extends java.lang.Object
Creates aSyncServer
and allows to set additional configuration.
-
-
Constructor Summary
Constructors Constructor Description SyncServerBuilder(BoxStore boxStore, java.lang.String url, SyncCredentials authenticatorCredentials)
UseSync.server(BoxStore, String, SyncCredentials)
instead.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description SyncServerBuilder
authenticatorCredentials(SyncCredentials authenticatorCredentials)
Adds additional authenticator credentials to authenticate clients or peers with.SyncServer
build()
Builds and returns a Sync server ready toSyncServer.start()
.SyncServer
buildAndStart()
Builds,starts
and returns a Sync server.SyncServerBuilder
certificatePath(java.lang.String certificatePath)
Sets the path to a directory that contains a cert.pem and key.pem file to use to establish encrypted connections.SyncServerBuilder
changeListener(SyncChangeListener changeListener)
Sets a listener to observe fine granular changes happening during sync.SyncServerBuilder
clusterFlags(int flags)
Sets bit flags to configure the cluster behavior of the Sync server (aka cluster peer).SyncServerBuilder
clusterId(java.lang.String id)
Enables cluster mode (requires the Cluster feature) and associates this cluster peer with the given ID.SyncServerBuilder
clusterPeer(java.lang.String url, SyncCredentials credentials)
Adds a (remote) cluster peer, to which this server should connect to as a client using the given credentials.SyncServerBuilder
historySizeMaxKb(long historySizeMaxKb)
Sets the maximum transaction history size.SyncServerBuilder
historySizeTargetKb(long historySizeTargetKb)
Sets the target transaction history size.SyncServerBuilder
peer(java.lang.String url)
Deprecated.UseclusterPeer(url, SyncCredentials.none())
instead.SyncServerBuilder
peer(java.lang.String url, SyncCredentials credentials)
Deprecated.UseclusterPeer(String,SyncCredentials)
instead.SyncServerBuilder
syncFlags(int syncFlags)
Sets bit flags to adjust Sync behavior, like additional logging.SyncServerBuilder
syncServerFlags(int syncServerFlags)
Sets bit flags to configure the Sync server.SyncServerBuilder
workerThreads(int workerThreads)
Sets the number of workers for the main task pool.
-
-
-
Constructor Detail
-
SyncServerBuilder
@Internal public SyncServerBuilder(BoxStore boxStore, java.lang.String url, SyncCredentials authenticatorCredentials)
UseSync.server(BoxStore, String, SyncCredentials)
instead.
-
-
Method Detail
-
certificatePath
public SyncServerBuilder certificatePath(java.lang.String certificatePath)
Sets the path to a directory that contains a cert.pem and key.pem file to use to establish encrypted connections.Use the "wss://" protocol for the server URL to turn on encrypted connections.
-
authenticatorCredentials
public SyncServerBuilder authenticatorCredentials(SyncCredentials authenticatorCredentials)
Adds additional authenticator credentials to authenticate clients or peers with.For the embedded server, currently only
SyncCredentials.sharedSecret(java.lang.String)
andSyncCredentials.none()
are supported.
-
changeListener
public SyncServerBuilder changeListener(SyncChangeListener changeListener)
Sets a listener to observe fine granular changes happening during sync.This listener can also be
set or removed
on the Sync server directly.
-
clusterId
public SyncServerBuilder clusterId(java.lang.String id)
Enables cluster mode (requires the Cluster feature) and associates this cluster peer with the given ID.Cluster peers need to share the same ID to be in the same cluster.
-
peer
@Deprecated public SyncServerBuilder peer(java.lang.String url)
Deprecated.UseclusterPeer(url, SyncCredentials.none())
instead.
-
peer
@Deprecated public SyncServerBuilder peer(java.lang.String url, SyncCredentials credentials)
Deprecated.UseclusterPeer(String,SyncCredentials)
instead.
-
clusterPeer
public SyncServerBuilder clusterPeer(java.lang.String url, SyncCredentials credentials)
Adds a (remote) cluster peer, to which this server should connect to as a client using the given credentials.To use this, must set a
clusterId(String)
.
-
clusterFlags
public SyncServerBuilder clusterFlags(int flags)
Sets bit flags to configure the cluster behavior of the Sync server (aka cluster peer).To use this, must set a
clusterId(String)
.- Parameters:
flags
- One or more ofClusterFlags
.
-
historySizeMaxKb
public SyncServerBuilder historySizeMaxKb(long historySizeMaxKb)
Sets the maximum transaction history size.Once the maximum size is reached, old transaction logs are deleted to stay below this limit. This is sometimes also called "history pruning" in the context of Sync.
If not set or set to 0, defaults to no limit.
- See Also:
historySizeTargetKb(long)
-
historySizeTargetKb
public SyncServerBuilder historySizeTargetKb(long historySizeTargetKb)
Sets the target transaction history size.Once the maximum size (
historySizeMaxKb(long)
) is reached, old transaction logs are deleted until this size target is reached (lower than the maximum size). Using this target size typically lowers the frequency of history pruning and thus may improve efficiency.If not set or set to 0, defaults to
historySizeMaxKb(long)
.
-
syncFlags
public SyncServerBuilder syncFlags(int syncFlags)
Sets bit flags to adjust Sync behavior, like additional logging.- Parameters:
syncFlags
- One or more ofSyncFlags
.
-
syncServerFlags
public SyncServerBuilder syncServerFlags(int syncServerFlags)
Sets bit flags to configure the Sync server.- Parameters:
syncServerFlags
- One or more ofSyncServerFlags
.
-
workerThreads
public SyncServerBuilder workerThreads(int workerThreads)
Sets the number of workers for the main task pool.If not set or set to 0, this uses a hardware-dependant default, e.g. 3 * CPU "cores".
-
build
public SyncServer build()
Builds and returns a Sync server ready toSyncServer.start()
.Note: this clears all previously set authenticator credentials.
-
buildAndStart
public SyncServer buildAndStart()
Builds,starts
and returns a Sync server.
-
-