Data Sync Locally on Device

      +

      Description — Couchbase Lite Database Sync - Synchronize changes between databases on the same device
      Related Content — Remote Sync Gateway | Peer-to-Peer Sync

      Overview

      Couchbase Lite supports replication between two local databases at the database, scope, or collection level. This allows a Couchbase Lite replicator to store data on secondary storage. It is useful in scenarios when a user’s device is damaged and its data is moved to a different device.

      Example 1. Replication between Local Databases
      • Kotlin

      • Java

      // This is an Enterprise feature:
      // the code below will generate a compilation error
      // if it's compiled against CBL Android Community Edition.
      // Note: the target database must already contain the
      //       source collections or the replication will fail.
      val repl = Replicator(
          ReplicatorConfigurationFactory.newConfig(
              collections = CollectionConfiguration.fromCollections(srcCollections),
              target = DatabaseEndpoint(targetDb),
              type = ReplicatorType.PUSH
          )
      )
      
      // Start the replicator
      // (be sure to hold a reference somewhere that will prevent it from being GCed)
      repl.start()
      thisReplicator = repl
      // This is an Enterprise feature:
      // the code below will generate a compilation error
      // if it's compiled against CBL Android Community Edition.
      // Note: the target database must already contain the
      //       source collections or the replication will fail.
      final Replicator repl = new Replicator(
              new ReplicatorConfiguration(CollectionConfiguration.fromCollections(srcCollections), new DatabaseEndpoint(targetDb))
                      .setType(ReplicatorType.PUSH)
      );
      
      // Start the replicator
      // (be sure to hold a reference somewhere that will prevent it from being GCed)
      repl.start();
      thisReplicator = repl;