Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package org.eclipse.team.core.synchronize

Application programming interfaces for managing synchronization state.

See:
Description

Interface Summary
ISyncInfoSetChangeEvent | An event generated when a `SyncInfoSet` collection is changed.
ISyncInfoSetChangeListener | Classes which implement this interface provide methods that deal with the change events that are generated by a `SyncInfoSet`.
ISyncInfoTreeChangeEvent | This is a change event that provides access to changes in subtrees that contain the out-of-sync resources.

Class Summary
FastSyncInfoFilter | A specialized `SyncInfoFilter` that does not require a progress monitor.
FastSyncInfoFilter.AndSyncInfoFilter | Selects `SyncInfo` which match all child filters.
FastSyncInfoFilter.AutomergableFilter | Selects `SyncInfo` instances that are auto-mergable.
FastSyncInfoFilter.CompoundSyncInfoFilter | An abstract class which contains a set of `FastSyncInfoFilter` instances.
FastSyncInfoFilter.OrSyncInfoFilter | Selects `SyncInfo` that match any of the child filters.
FastSyncInfoFilter.PseudoConflictFilter | Selects `SyncInfo` instances that are pseudo-conflicts.
FastSyncInfoFilter.SyncInfoChangeTypeFilter | Selects `SyncInfo` whose change type match those of the filter.
FastSyncInfoFilter.SyncInfoDirectionFilter | Selects `SyncInfo` whose change direction match those of the filter.
SyncInfo | Describes the synchronization of a local resource relative to a remote resource variant.
SyncInfoFilter | A `SyncInfoFilter` tests a `SyncInfo` for inclusion, typically in a `SyncInfoSet`.
SyncInfoFilter.ContentComparisonSyncInfoFilter | Selects `SyncInfo` whose local and remote contents match.
SyncInfoSet | A dynamic collection of `SyncInfo` objects that provides change notification to registered listeners.
SyncInfoTree | Provides addition API for accessing the `SyncInfo` in the set through their resource's hierarchical relationships.

## Package org.eclipse.team.core.synchronize Description

Application programming interfaces for managing synchronization state.

## Package Specification

This package specifies the API for managing the synchronization state between the local workspace resources and a corresponding variants of those resources. The classes in this package can be used by Subscribers (see the org.eclipse.team.core.subscribers package) or others. The classes are roughly divided into three categories:

- describing the synchronization state of a one or more resources,
- notifying interested parties of changes in the synchronization state.
- filtering a set of resource based on a sync state criteria

### Describing the synchronization state of resources

The following classes are provided to accumulate (and possibly filter) the synchronization state of one or more resources.

- SyncInfo: node which maps a local resource to a corresponding variant resource (and a base resource for three-way compare) and descibes the synchronization state of those resources (e.g. in-sync or incoming-change).
- SyncInfoSet: a set which contains the out-of-sync SyncInfo for multiple local resources.
- SyncInfoTree: a specialized set optimized for hierarchical resource based access (e.g. to obtain all out-of-sync children of a particular local resource).

### Notifying interested parties of sync info set changes

Interested parties can register with a SyncInfoSet in order to receive notification when a set changes.

- ISyncInfoSetChangeListener: implementors of this interface can be registered with a SyncInfoSet in order to recieve notification when the contents of the set change.
- ISyncInfoSetChangeEvent: the type of the events generated by a SyncInfoSet
- ISyncInfoTreeChangeEvent: specialized ISyncInfoSetChangeEvent generated by SyncInfoTree which includes notification of resource subtree aditions and removals.

### Sync info filtering

There are also some additional classes provided to help manage SyncInfoSets

- SyncInfoFilter: a filter that can be used to test SyncInfo. Long running tests are supported via an IProgressMonitor. SyncInfoSet has API for selecting and rejecting SyncInfo based on a provided filter.
- FastSyncInfoFilter: a specialized filter that does not support the ue of a progress monitor

Several common filters are provided as inner classes of the two filter classes for doing synchronization state tests and filter compounding (and, or, not).

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.