syncevolution/src/backends/sqlite
Patrick Ohly 04f11b422e source -> datastore rename, improved terminology
The word "source" implies reading, while in fact access is read/write.
"datastore" avoids that misconception. Writing it in one word emphasizes
that it is single entity.

While renaming, also remove references to explicit --*-property
parameters. The only necessary use today is "--sync-property ?"
and "--datastore-property ?".

--datastore-property was used instead of the short --store-property
because "store" might be mistaken for the verb. It doesn't matter
that it is longer because it doesn't get typed often.

--source-property must remain valid for backward compatility.

As many user-visible instances of "source" as possible got replaced in
text strings by the newer term "datastore". Debug messages were left
unchanged unless some regex happened to match it.

The source code will continue to use the old variable and class names
based on "source".

Various documentation enhancements:
  Better explain what local sync is and how it involves two sync
  configs. "originating config" gets introduces instead of just
  "sync config".

  Better explain the relationship between contexts, sync configs,
  and source configs ("a sync config can use the datastore configs in
  the same context").

  An entire section on config properties in the terminology
  section. "item" added (Todd Wilson correctly pointed out that it was
  missing).

  Less focus on conflict resolution, as suggested by Graham Cobb.

  Fix examples that became invalid when fixing the password
  storage/lookup mechanism for GNOME keyring in 1.4.

  The "command line conventions", "Synchronization beyond SyncML" and
  "CalDAV and CardDAV" sections were updated. It's possible that the
  other sections also contain slightly incorrect usage of the
  terminology or are simply out-dated.
2014-07-28 15:29:41 +02:00
..
README source -> datastore rename, improved terminology 2014-07-28 15:29:41 +02:00
SQLiteContactSource.cpp code restructing: Exception, throwError() 2014-05-02 16:43:52 +02:00
SQLiteContactSource.h SQLite backend: adapted to SyncSource API changes 2011-05-05 20:16:10 +08:00
SQLiteContactSourceRegister.cpp SyncSource: remove special RegisterSyncSource::InactiveSource pointer 2012-03-09 07:25:11 +00:00
SQLiteUtil.cpp code restructing: Exception, throwError() 2014-05-02 16:43:52 +02:00
SQLiteUtil.h code restructing: Exception, throwError() 2014-05-02 16:43:52 +02:00
configure-sub.in Port build system to non-recursive Automake. 2011-08-30 16:38:34 +02:00
sqlite.am autotools: avoid -lrt in make dependencies 2013-02-26 12:03:45 +01:00

README

This is a demo backend. It uses a database schema that is similar to
the one used on the iPhone, but it is not as complete.

To compile this backend as part of SyncEvolution, configure with
--enable-sqlite.

To compile it against a binary distribution of SyncEvolution, make
sure that the SyncEvolution, Synthesis and sqlite developer files are
installed and that pkg-config can find syncevolution.pc, synthesis.pc
and sqlite.pc. Set your PKG_CONFIG_PATH if necessary.

Then the source files can be compiled as follows:
   g++ -fpic -DPIC -DENABLE_SQLITE -shared -I. \
       `pkg-config --cflags --libs syncevolution`
       `pkg-config --cflags --libs sqlite`
       *.cpp  \
       -o /tmp/syncsqlite.so

Install /tmp/syncsqlite.so by moving it into the
"lib/syncevolution/backends" directory of the SyncEvolution
installation.

It then should show up as additional choice for the "type" property:
   syncevolution --datastore-property type=?

   ...
   SQLite Address Book = addressbook = contacts = sqlite-contacts
      vCard 2.1 (default) = text/x-vcard