Modules, Sync Connectors, Sync Source Types and Sync Sources

SyncServer uses many concepts to group together features and configuration settings. Below there is a short description of what is intended for module, SyncConnector, sync source type and sync source.

Module: is a package used to group together and distribute SyncServer extensions. A Module contains sync connectors, synclets, configuration files, database scripts and so on.

SyncConnector: is a server extension that integrates SyncServer with an external source of data. It contains everything is required for the configuration and the runtime execution of the integration module. This includes basic configuration files, code, software interfaces and graphical user interfaces for the sync sources configuration. In addition, a sync connector defines the sync source types, which are the kind of sync sources an administrator or developer can create and configure.

Sync Source Type: represents a specific kind of sync source, such as file system sync source (to access the file system), exchange server contact sync source (to access a Microsoft Exchange account) and so on.

Sync Source: is the minimal synchronization unit. A sync source represents the entity a client can request to synchronize. A sync source is uniquely identified in the server through a source URI, which is the key the client must use to address it.

Given the above definitions, we can have another look at the Figure 4, which shows the standard SyncServer configuration. A standard SyncServer installation comes with two installed modules: Foundation version 1.0 and PDI version 1.1.


Figure 4 - The administration console

The module Foundation is a standard Sync4j module; it contains internal components used by the server intself and the SyncConnectorFoundation. This just defines a sync source type called FileSystem SyncSource that can be used to create new file system sync sources.

The PDI module includes the PDI connector and, again, gives the ability to create new PMI related sync sources. PDI states for Personal Data Interchange, thus this module is intended for easily testing SyncServer with mobile phones and PIM applications. By default, the PDI module brings the following preconfigured sync sources:

Source URI   Description
./briefcase A file system sync source able to synchronize binary files
./contact A file system sync source able to synchronize vCard data (used for example by mobile phones)
./calendar A file system sync source able to synchronize iCalendar data (used for example by mobile phones)
./sifcalendar A file system sync source able to synchronize Sync4j Interchange Format Event (SIF-E) data (used for example by the Sync4j SyncClient for Outlook)
./sifcontact A file system sync source able to synchronize Sync4j Interchange Format Contact (SIF-C) data (used for example by the Sync4j SyncClient for Outlook)
./siftask A file system sync source able to synchronize Sync4j Interchange Format Task (SIF-T) data (used for example by the Sync4j SyncClient for Outlook)
./sifnote A file system sync source able to synchronize Sync4j Interchange Format Note (SIF-N) data (used for example by the Sync4j SyncClient for Outlook)

To edit a sync source click on its source URI in the SyncAdmin Console. The configuration of a file system sync source is shown in Figure 11.


Figure 11 - File system sync source configuration panel

The fields have the following meaning:

URI: the source URI
Name: the source display name
Type: files content mime type
Source Directory: where files are stored and read
Supported types: comma separated list of the supported mime types; they are sent in the server capabilities packet
Supported versions: comma separated list of the mime type versions; for each mime type specified in the supported types, a version number must appear here
Encoded: when the files content must be Base64 encoded. Please note that encoding may not be supported by clients (i.e. cell phones).