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:
  • Method Summary

    Modifier and Type
    Method
    Description
    byte[]
    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.
    Return a content identifier that is used to differentiate versions or revisions of the same resource.
    Answers the name of the remote resource.
    Return an instance of IStorage or null if the remote resource does not have contents (i.e. is a folder).
    boolean
    Answers if the remote resource may have children.
  • Method Details

    • 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 - if an error occurs
    • 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