# Class AbstractSynchronizationCompareAdapter

java.lang.Object
org.eclipse.team.ui.mapping.SynchronizationCompareAdapter
org.eclipse.ltk.ui.refactoring.model.AbstractSynchronizationCompareAdapter

All Implemented Interfaces:
  `ISynchronizationCompareAdapter`

public abstract class AbstractSynchronizationCompareAdapter extends SynchronizationCompareAdapter
Partial implementation of a refactoring-aware synchronization compare adapter.

This class provides compare support for the refactoring history objects associated with a refactoring model provider.

Note: this class is designed to be extended by clients. Programming language implementers which need a refactoring-aware synchronization compare adapter to contribute to team synchronization views may extend this class to provide specific compare inputs for their model elements.

Since:
  3.2
See Also:
  - `SynchronizationCompareAdapter`

## Constructor Summary

Constructors
Constructor
Description
`AbstractSynchronizationCompareAdapter()`

## Method Summary

Modifier and Type
Method
Description
`ICompareInput`
`asCompareInput(ISynchronizationContext context, Object element)`
Default implementation that is capable of returning a compare input for objects that adapt to `IFile`.
`protected int`
`getKind(ISynchronizationContext context, RefactoringDescriptorProxy proxy)`
Returns the kind of difference between the three sides ancestor, left and right of the specified refactoring descriptor proxy.

### Methods inherited from class SynchronizationCompareAdapter

`getImageDescriptor, getName, getPathString, getSynchronizationState, hasCompareInput`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface ISynchronizationCompareAdapter

`restore, save`

## Constructor Details

### AbstractSynchronizationCompareAdapter

public AbstractSynchronizationCompareAdapter()

## Method Details

### asCompareInput

public ICompareInput asCompareInput(ISynchronizationContext context, Object element)
Description copied from class: `SynchronizationCompareAdapter`
Default implementation that is capable of returning a compare input for objects that adapt to `IFile`. Subclasses should override if compare inputs are available for other types of model elements.

Specified by:
  `asCompareInput` in interface `ISynchronizationCompareAdapter`
Overrides:
  `asCompareInput` in class `SynchronizationCompareAdapter`
Parameters:
  `context` - the synchronization context
  `element` - the model object
Returns:
  a compare input or `null` if the model object is in-sync or otherwise cannot be compared.
See Also:
  - `ISynchronizationCompareAdapter.asCompareInput(ISynchronizationContext, Object)`

### getKind

protected int getKind(ISynchronizationContext context, RefactoringDescriptorProxy proxy)
Returns the kind of difference between the three sides ancestor, left and right of the specified refactoring descriptor proxy.

The result of this method is used to compose an icon which reflects the kind of difference between the two or three versions of the refactoring descriptor.

Parameters:
  `context` - the synchronization context
  `proxy` - the refactoring descriptor proxy
Returns:
  the kind of difference
See Also:
  - `ICompareInput.getKind()`