There are two main roles associated with the Sync Manager.
- Makes use of the provided user interface to manage synchronization tasks
- Uses custom contributed interfaces, if provided, to define new synchronization tasks
- Sync Manager consumer
- Defines synchronization tasks
- Contributes mechanisms (a user interface) to define synchronization tasks
- Sync Engine developer
- Contributes a Sync Engine to the platform
- Defines optional property pages for changing options of synchronization tasks
- Contributes additional types to an existing Sync Engine
The user tasks are relatively easy to describe, since they are generally related to the use of the Synchronization UI, and don't require any specific knowledge of provided classes, interfaces, or extension points. A Sync Engine provider may have contributed their own user interface to allow for the user definition of synchronization tasks, or the Sync Engine provider may have predefined the available synchronization tasks, and the user just needs to start, stop and schedule these tasks.
The developer tasks - to work with the Sync Manager and to contribute a Sync Engine to the platform - are much more complex and will require developing code to connect the Sync Engine to the Sync Manager framework. The following sections will explore the various steps for contributing and connecting a Sync Engine.
Parent topic: Using Sync Manager