Interface VersionStore

All Known Implementing Classes:
CachingVersionStore, OfBizVersionStore

public interface VersionStore
Interface for the VersionStore.

This is used by the VersionManager to store and retrieve Project Versions.

Most of the methods still work with GenericValues, because this happens to be useful to the DefaultVersionManager. (Specifically, it uses EntityUtil.filterByAnd() to filter the List of GenericValues returned by the getAllVersions() method). On the other hand, storeVersions() takes a List of Version objects because this is what the DefaultVersionManager wants.

  • Method Details

    • getVersion

      @Nullable Version getVersion(Long id)
    • getAllVersions

      @Nonnull Iterable<Version> getAllVersions()
      Returns a list of GenericValues representing all Versions in JIRA, ordered by sequence.
      Returns:
      a list of GenericValues representing all Versions in JIRA, ordered by sequence.
    • getVersionsByName

      @Nonnull Iterable<Version> getVersionsByName(String name)
      Returns a list of GenericValues representing all Versions in JIRA with a given name, case insensitively.
      Parameters:
      name - Version name
      Returns:
      a list of GenericValues representing all Versions in JIRA with a given name, case insensitively.
    • getVersionsByProject

      @Nonnull Iterable<Version> getVersionsByProject(Long projectId)
      Returns a list of GenericValues representing all Versions in a project.
      Parameters:
      projectId - Project Id
      Returns:
      a list of GenericValues representing all Versions in a project
    • createVersion

      @Nonnull Version createVersion(@Nonnull Version version)
    • storeVersion

      void storeVersion(@Nonnull Version version)
      Stores an individual Version in the DB. If you want to store a collection of Versions, consider using storeVersions(java.util.Collection<com.atlassian.jira.project.version.Version>), it can be more efficient.
      Parameters:
      version - The Version to store.
      See Also:
    • storeVersions

      void storeVersions(@Nonnull Collection<Version> versions)
      Stores a collection of Version objects. This method can have performance benefits over calling storeVersion() multiple times. eg the CachingVersionStore will reload the cache from DB with every call to storeVersion().
      Parameters:
      versions - Collection of Version objects.
      See Also:
    • deleteVersion

      void deleteVersion(@Nonnull Version version)
      Deletes given Version object by removing it from database.
      Parameters:
      version - to be deleted
    • deleteAllVersions

      void deleteAllVersions(@Nonnull Long projectId)
      Deletes all versions in a given project by removing them from database.
      Parameters:
      projectId - of the project in which the versions will be deleted.