Interface ISnapshotLocationProvider


  • public interface ISnapshotLocationProvider
    Snapshot location provider provides locations for snapshots, bound to Git commits.
    Restriction:
    This interface is not intended to be extended by clients.
    Restriction:
    This interface is not intended to be implemented by clients.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      Path getLocationFor​(org.eclipse.core.resources.IProject project, org.eclipse.jgit.lib.ObjectId revision)
      Determines location for existing or non-existing snapshot for the given project and commit.
      boolean hasSnapshotFor​(org.eclipse.core.resources.IProject project, org.eclipse.jgit.lib.ObjectId revision)
      Checks whether a snapshot for the given project and commit exists.
      org.eclipse.jgit.lib.ObjectId[] listAvailableSnapshots​(org.eclipse.core.resources.IProject project)
      Gets all commits such that a snapshot for the given project and the commit exists.
    • Method Detail

      • hasSnapshotFor

        boolean hasSnapshotFor​(org.eclipse.core.resources.IProject project,
                               org.eclipse.jgit.lib.ObjectId revision)
        Checks whether a snapshot for the given project and commit exists.
        Parameters:
        project - the project, cannot be null
        revision - SHA-1 of the commit, cannot be null
        Returns:
        true if the snapshot exists
        Throws:
        SnapshotIntegrationException - if the provider failed to prepare snapshot location
      • getLocationFor

        Path getLocationFor​(org.eclipse.core.resources.IProject project,
                            org.eclipse.jgit.lib.ObjectId revision)
        Determines location for existing or non-existing snapshot for the given project and commit.
        Parameters:
        project - the project, cannot be null
        revision - SHA-1 of the commit, cannot be null
        Returns:
        the snapshot location, never null
        Throws:
        SnapshotIntegrationException - if the provider failed to prepare snapshot location
      • listAvailableSnapshots

        org.eclipse.jgit.lib.ObjectId[] listAvailableSnapshots​(org.eclipse.core.resources.IProject project)
        Gets all commits such that a snapshot for the given project and the commit exists.
        Parameters:
        project - the project, cannot be null
        Returns:
        array of SHA-1 of the commits, never null
        Throws:
        SnapshotIntegrationException - if the snapshot lookup failed