Uploaded image for project: 'Couchbase Lite'
  1. Couchbase Lite
  2. CBL-298

Replication Enhancements

    XMLWordPrintable

Details

    • Epic
    • Resolution: Won't Do
    • Major
    • 3.0
    • 3.0
    • API
    • Security Level: Public
    • None
    • Replication Enhancements

    Description

      Replication related API issues from GitHub.

       

      From https://github.com/couchbaselabs/couchbase-lite-api/issues/58

      There are several issues in this repo that cover adding specific optional properties to replications. Those would all become part of this properties object. I'll add links to/from them.

      The controversy when we discussed this in the past is whether properties should be a dictionary, supporting arbitrary string keys, or a custom class with a specific set of properties.

      • A dictionary is simpler to implement and uses less code than adding a new class and properties.
      • A dictionary maps exactly to the properties in the POST request to _replicate in the REST API (that's actually why I created it.)
      • It's easy (for better or worse) to add unofficial properties to a dictionary, i.e. for a specific customer or as a workaround for a problem, without needing to touch the API. (An example of this is the "websockets" property in iOS that you can set to false to disable use of websockets.)
      • A custom class is simpler to use, and the documentation is slightly clearer (we document the properties, not string constants naming keys.)
      • A custom class's properties are type-safe.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            The Lite The Lite
            daniel.petersen Daniel Petersen (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty