Eclipse Platform Release 3.7

## org.eclipse.team.core.variants
Interface IResourceVariant

All Known Implementing Classes:
  CachedResourceVariant

    public interface IResourceVariant

This interface is used by `SyncInfo` instances to provide access to the base and remote resources that correspond to a local resource.

Since:
  3.0
See Also:
  `SyncInfo`

Method Summary
`byte[]` `asBytes()` Return an array of bytes that can be used to uniquely identify this resource variant when compared to other resource variants and could also potentially be used to recreate a resource variant handle.
`boolean` `equals(Object object)` Returns whether the remote resource is equal to the provided object.
`String` `getContentIdentifier()` Return a content identifier that is used to differentiate versions or revisions of the same resource.
`String` `getName()` Answers the name of the remote resource.
`IStorage` `getStorage(IProgressMonitor monitor)` Return an instance of IStorage or `null` if the remote resource does not have contents (i.e. is a folder).
`boolean` `isContainer()` Answers if the remote resource may have children.

Method Detail

### getName

    String getName()

  Answers the name of the remote resource. The name may be displayed to the user.

  Returns:
    name of the resource variant.

### isContainer

    boolean isContainer()

  Answers if the remote resource may have children.

  Returns:
    `true` if the remote resource may have children and `false` otherwise.

### getStorage

    IStorage getStorage(IProgressMonitor monitor)
                        throws TeamException

  Return an instance of IStorage or `null` if the remote resource does not have contents (i.e. is a folder). Since the `ISorage#getContents()` method does not accept an `IProgressMonitor`, this method must ensure that the contents access by the resulting `IStorage` is cached locally (hence the `IProgressMonitor` argument to this method). Implementations of this method should ensure that the resulting `IStorage` is accessing locally cached contents and is not contacting the server.

  The returned storage object may be an instance of (@link org.eclipse.core.resources.IEncodedStorage} in which case clients can determine the character encoding of the contents.

  Parameters:
    `monitor` - a progress monitor
  Returns:
    an `IStorage` that provides access to the contents of the remote resource or `null` if the remote resource is a container.
  Throws:
    `TeamException`

### getContentIdentifier

    String getContentIdentifier()

  Return a content identifier that is used to differentiate versions or revisions of the same resource.

  Returns:
    a String that identifies the version of the subscriber resource

### asBytes

    byte[] asBytes()

  Return an array of bytes that can be used to uniquely identify this resource variant when compared to other resource variants and could also potentially be used to recreate a resource variant handle.

  Returns:
    the bytes that uniquely identify this resource variant

### equals

    boolean equals(Object object)

  Returns whether the remote resource is equal to the provided object.

  Overrides:
    `equals` in class `Object`
  Parameters:
    `object` - the object to be compared
  Returns:
    whether the object is equal to the remote resource

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.