Class Revision

java.lang.Object
net.sf.statcvs.model.Revision
All Implemented Interfaces:
Comparable

public class Revision extends Object implements Comparable
Version:
$Id: Revision.java,v 1.3 2009/08/20 17:44:05 benoitx Exp $
Author:
Manuel Schulze, Richard Cyganiak <richard@cyganiak.de>
  • Field Details

    • TYPE_CREATION

      public static final int TYPE_CREATION
      Marks a revision that creates a new file. The file did not exist in the current branch before this revision, and it does exist afterwards. Possibly the file existed before, that is, it was deleted and restored.
      See Also:
    • TYPE_CHANGE

      public static final int TYPE_CHANGE
      Marks a revision that changes the file. It does neither create nor delete the file.
      See Also:
    • TYPE_DELETION

      public static final int TYPE_DELETION
      Marks a revision that deletes the file. The file existed before, but does not exist afterwards in the current branch.
      See Also:
    • TYPE_BEGIN_OF_LOG

      public static final int TYPE_BEGIN_OF_LOG
      Marks a revision at the very beginning of the log timespan. This is only a container for the number of code lines at the beginning of the log. It is not a real revision committed by an author.
      See Also:
  • Constructor Details

    • Revision

      public Revision(VersionedFile file, String revisionNumber, int type, Author author, Date date, String comment, int lines, int linesDelta, int linesReplaced, SortedSet symbolicNames)
      Creates a new revision of a file with the specified revision number. Should not be called directly. Instead, VersionedFile.addInitialRevision(java.lang.String, net.sf.statcvs.model.Author, java.util.Date, java.lang.String, int, java.util.SortedSet) and its sister methods should be used.
      Parameters:
      file - VersionedFile that belongs to this revision
      revisionNumber - revision number, for example "1.1"
      type - a TYPE_XXX constant
      author - the author of the revision
      date - the date of the revision
      comment - the author's comment
      lines - number of lines; 0 for deletions
      linesDelta - by how much did the number of lines change, compared to the previous revision?
      linesReplaced - How many lines were removed and replaced by other lines, without the delta changing?
      symbolicNames - list of symbolic names for this revision or null if this revision has no symbolic names
  • Method Details

    • getRevisionNumber

      public String getRevisionNumber()
      Returns the revision number.
      Returns:
      the revision number
    • getAuthor

      public Author getAuthor()
      Returns the author of this revision.
      Returns:
      the author
    • getComment

      public String getComment()
      Returns the comment for this revision.
      Returns:
      the comment
    • getDate

      public Date getDate()
      Returns the date of this revision.
      Returns:
      the date
    • getLines

      public int getLines()
      Returns the number of lines for this revision. This is 0 for dead revisions.
      Returns:
      the number of lines
    • getLinesDelta

      public int getLinesDelta()
      Returns by how many lines the line count changed with this revision. Deletions return -getLines(), re-adds and initial revisions return getLines().
      Returns:
      the line count change of this revision
    • getReplacedLines

      public int getReplacedLines()
      Returns the number of lines that were removed and replaced by other lines in this revision. For example, if 5 lines were added and 2 lines removed, this would be 3. If 1 line was added and 1 was removed, it would be 1. If it was an initial revision or a deletion, it would be 0.
      Returns:
      the number of lines that were replaced by other lines.
    • getNewLines

      public int getNewLines()
      Returns the number of "new" lines in this revision. This is the sum of added and changed lines. In other words, all the "original" lines the author of this revision came up with.
      Returns:
      lines changed or added
    • getFileCountDelta

      public int getFileCountDelta()
      Returns the change of the file count caused by this revision. This is 1 for initial revisions and re-adds, -1 for deletions, and 0 for normal revisions.
      Returns:
      the file count change of this revision
    • isInitialRevision

      public boolean isInitialRevision()
      Returns true if the file did not exist before this revision and does exist afterwards. Possibly the file was deleted before, or it never existed before.
      Returns:
      true if the file did not exist before
    • isDead

      public boolean isDead()
      Returns true if the file is deleted in this revision.
      Returns:
      true if the file is deleted in this revision
    • isBeginOfLog

      public boolean isBeginOfLog()
      Returns true if this is a revision at the very beginning of the log timespan which is only a container for the number of code lines at the beginning of the log and not a real revision committed by an author.
      Returns:
      true if this revision exists only for StatCvs bookkeeping purposes
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getFile

      public VersionedFile getFile()
      Returns the file which was changed by this revision.
      Returns:
      the file
    • getPreviousRevision

      public Revision getPreviousRevision()
      Returns the predecessor of this revision or null if it is the first revision for the file.
      Returns:
      the predecessor of this revision
    • getSymbolicNames

      public SortedSet getSymbolicNames()
      Returns a list of SymbolicNames of this revision or null if the revision has no symbolic names. The list is ordered from latest to oldest.
      Returns:
      list of symbolic names
    • compareTo

      public int compareTo(Object other)
      Compares this revision to another revision. A revision is considered smaller if its date is smaller. If the dates are identical, the filename, author name, revision number and comment will be used to break the tie.
      Specified by:
      compareTo in interface Comparable
    • equals

      public boolean equals(Object rhs)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getLinesAdded

      public int getLinesAdded()
      Deprecated.
    • getLinesRemoved

      public int getLinesRemoved()
      Deprecated.
    • getLinesOfCode

      public int getLinesOfCode()
      Deprecated.
      Use getLines() instead.
    • getEffectiveLinesOfCode

      public int getEffectiveLinesOfCode()
      Deprecated.
      Use getLines() instead.
    • getLinesOfCodeChange

      public int getLinesOfCodeChange()
      Deprecated.
      Use getLinesDelta() instead.
    • getLineValue

      public int getLineValue()
      Deprecated.
      Use getNewLines() instead.
    • getRemovingValue

      public int getRemovingValue()
      Deprecated.
    • getFileCountChange

      public int getFileCountChange()
      Deprecated.
      Use getFileCountDelta() instead.
    • getRevision

      public String getRevision()
      Deprecated.
      Use getRevisionNumber() instead.