Интерфейс IFileSyncScopeFilter
Определяет фильтры, которые могут использоваться для включения или исключения файлов и папок из статической области синхронизации.
Синтаксис
interface IFileSyncScopeFilter : IUnknown
Элементы
Методы IFileSyncScopeFilter |
Описание |
---|---|
Задает коллекцию имен файлов, подлежащих исключению из области. |
|
Задает коллекцию относительных путей к каталогам, исключаемых из области. |
|
Задает атрибуты, используемые для исключения файлов и папок из области. |
|
Задает коллекцию имен файлов, явным образом включаемых в область. |
|
Возвращает коллекцию имен файлов, подлежащих исключению из области. |
|
Возвращает коллекцию относительных путей к каталогам, подлежащим исключению из области. |
|
Возвращает атрибуты, используемые для исключения файлов и папок из области. |
|
Возвращает коллекцию имен файлов, подлежащих явному включению в область. |
Замечания
Статические фильтры используются на этапе обнаружения изменений и одинаковым образом применяются ко всем элементам в области синхронизации. Элемент включается в синхронизацию только при условии прохождения всех статических фильтров. Например, если некоторый файл и явным образом исключен, и явным образом включен, то он исключается из области.
Один и тот же фильтр области должен использоваться во всех поставщиках в сообществе синхронизации. В противном случае возможны нежелательные эффекты.
Фильтр, передаваемый методу IFileSyncProvider::Initialize, используется для инициализации объекта службы на основе фильтра области во время передачи. Последующие изменения фильтра не изменяют фильтр области, который используется этим экземпляром службы. Чтобы изменить используемый фильтр области, необходимо создать новый объект IFileSyncProvider.
Смена области реплики после первой синхронизации может вызвать нежелательные побочные эффекты. Предположим, спустя какое-то время после первой синхронизации область реплики А перенастроена на исключение TXT-файлов. Это приведет к тому, что все файлы, имеющие расширение TXT, будут рассматриваться в реплике А как удаленные. Фактического удаления файлов из реплики А не произойдет, однако метаданные для реплики А будут содержать для TXT-файлов отметки полного удаления, поэтому реплика А будет передавать другим репликам изменения для удаления TXT-файлов. Если исключить TXT-файлы также и в реплике Б, это не вызовет никаких последствий, поскольку реплика Б будет фильтровать поступающие от реплики А изменения, которые относятся к TXT-файлам. Но если фильтр в реплике Б останется прежним, то к ней поступят изменения, касающиеся удаления файлов, которые будут рассматриваться как действительные запросы на изменение, в результате чего произойдет удаление файлов из реплики Б.
Требования
Заголовок: Filesyncprovider.h