Eclipse Platform
Release 3.1

org.eclipse.team.core.variants
Class ThreeWayResourceComparator

java.lang.Object
  extended byorg.eclipse.team.core.variants.ThreeWayResourceComparator
All Implemented Interfaces:
IResourceVariantComparator

public class ThreeWayResourceComparator
extends Object
implements IResourceVariantComparator

A resource comparator that uses the ThreeWaySynchronizer to compare local resources to their resource variants. The local state is determined using the local modification state and the remote state is determined by comparing the base bytes to the remote bytes obtained from the synchronizer.

Since:
3.0

Constructor Summary
ThreeWayResourceComparator(ThreeWaySynchronizer synchronizer)
          Create a three-way resource comparator that uses the ThreeWaySynchronizer to compare a local resource to a resource variant.
 
Method Summary
 boolean compare(IResource local, IResourceVariant remote)
          Returns true if the local resource matches the remote resource based on this criteria and false otherwise.
 boolean compare(IResourceVariant base, IResourceVariant remote)
          Returns true if the base resource matches the remote resource based on this criteria and false otherwise.
 boolean isThreeWay()
          Answers true if the base tree is maintained by this comparator's subscriber.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ThreeWayResourceComparator

public ThreeWayResourceComparator(ThreeWaySynchronizer synchronizer)
Create a three-way resource comparator that uses the ThreeWaySynchronizer to compare a local resource to a resource variant.

Parameters:
synchronizer -
Method Detail

compare

public boolean compare(IResource local,
                       IResourceVariant remote)
Description copied from interface: IResourceVariantComparator
Returns true if the local resource matches the remote resource based on this criteria and false otherwise. Comparing should be fast and based on cached information.

Specified by:
compare in interface IResourceVariantComparator
Parameters:
local - the local resource to be compared
remote - the remote resources to be compared
Returns:
true if local and remote are equal based on this criteria and false otherwise.

compare

public boolean compare(IResourceVariant base,
                       IResourceVariant remote)
Description copied from interface: IResourceVariantComparator
Returns true if the base resource matches the remote resource based on this criteria and false otherwise. Comparing should be fast and based on cached information.

Specified by:
compare in interface IResourceVariantComparator
Parameters:
base - the base resource to be compared
remote - the remote resources to be compared
Returns:
true if base and remote are equal based on this criteria and false otherwise.

isThreeWay

public boolean isThreeWay()
Description copied from interface: IResourceVariantComparator
Answers true if the base tree is maintained by this comparator's subscriber. If the base tree is not considered than the subscriber can be considered as not supported three-way comparisons. Instead comparisons are made between the local and remote only without consideration for the base.

Specified by:
isThreeWay in interface IResourceVariantComparator

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

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