Class SVNMergeRange

java.lang.Object
org.tmatesoft.svn.core.SVNMergeRange
All Implemented Interfaces:
Comparable

public class SVNMergeRange extends Object implements Comparable
The SVNMergeRange class represents a range of merged revisions.
Since:
1.2
Version:
1.3
Author:
TMate Software Ltd.
  • Constructor Summary

    Constructors
    Constructor
    Description
    SVNMergeRange(long startRevision, long endRevision, boolean isInheritable)
    Constructs a new SVNMergeRange object.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    canCombine(SVNMergeRange range, boolean considerInheritance)
    Tells whether this range can me combined with the given range depending on inheritance or not.
    combine(SVNMergeRange range, boolean considerInheritance)
    Combines this merge range and the given range into a single one.
    int
    Compares this object to another one.
    boolean
    contains(SVNMergeRange range, boolean considerInheritance)
    Says whether this range contains the specified range depending on inheritance or not.
    dup()
    Makes an exact copy of this object.
    boolean
    Says if this object is equal to obj or not.
    long
    Returns the end revision of this merge range.
    long
    Returns the start revision of this merge range.
    boolean
    intersects(SVNMergeRange range, boolean considerInheritance)
    Says whether this range intersects the specified range depending on inheritance or not.
    boolean
    Tells whether this merge range should be inherited by treewise descendants of the path to which the range applies.
    void
    setEndRevision(long endRevision)
    Sets the end revision of this merge range.
    void
    setInheritable(boolean isInheritable)
    Sets whether this merge range is inheritable or not.
    void
    setStartRevision(long startRevision)
    Sets the start revision of this merge range.
    Swaps the start revision and the end revision of this merge range object.
    Return a string representation of this object.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • SVNMergeRange

      public SVNMergeRange(long startRevision, long endRevision, boolean isInheritable)
      Constructs a new SVNMergeRange object.
      Parameters:
      startRevision - start revision of this merge range
      endRevision - end revision of this merge range
      isInheritable - whether this range is inheritable or not
  • Method Details

    • getEndRevision

      public long getEndRevision()
      Returns the end revision of this merge range.
      Returns:
      end revision
    • getStartRevision

      public long getStartRevision()
      Returns the start revision of this merge range.
      Returns:
      start revision
    • setEndRevision

      public void setEndRevision(long endRevision)
      Sets the end revision of this merge range. This method is used by SVNKit internals and is not intended for API users.
      Parameters:
      endRevision - merge range end revision
    • setStartRevision

      public void setStartRevision(long startRevision)
      Sets the start revision of this merge range. This method is used by SVNKit internals and is not intended for API users.
      Parameters:
      startRevision - merge range start revision
    • compareTo

      public int compareTo(Object o)
      Compares this object to another one.

      Note: merge range inheritance is not taken into account when comparing two SVNMergeRange objects.

      Specified by:
      compareTo in interface Comparable
      Parameters:
      o - object to compare to
      Returns:
      0 if o is exactly this object or o.getStartRevision() == this.getStartRevision() invalid input: '&'invalid input: '&' o.getEndRevision() == this.getEndRevision(); -1 if either this.getStartRevision() invalid input: '<' o.getStartRevision() or this.getStartRevision() == o.getStartRevision() invalid input: '&'invalid input: '&' this.getEndRevision() invalid input: '<' o.getEndRevision(); 1 if either this.getStartRevision() > o.getStartRevision() or this.getStartRevision() == o.getStartRevision() invalid input: '&'invalid input: '&' this.getEndRevision() > o.getEndRevision()
    • equals

      public boolean equals(Object obj)
      Says if this object is equal to obj or not.

      Identical to this.compareTo(obj) == 0.

      Overrides:
      equals in class Object
      Parameters:
      obj - object ot compare to
      Returns:
      true if equal; otherwise false
    • combine

      public SVNMergeRange combine(SVNMergeRange range, boolean considerInheritance)
      Combines this merge range and the given range into a single one.

      Combining may only occur if canCombine(SVNMergeRange, boolean) returns true for the specified parameters.

      Note: combining changes the state of this object.

      Parameters:
      range - range to combine with this range
      considerInheritance - whether inheritance information should be taken into account
      Returns:
      if combining occurs, returns this object which is now a combination of the two ranges; otherwise returns range
    • canCombine

      public boolean canCombine(SVNMergeRange range, boolean considerInheritance)
      Tells whether this range can me combined with the given range depending on inheritance or not.

      Combining may occur only when two ranges intersect each other what may be checked by the following case: range1.getStartRevision() <= range2.getEndRevision() invalid input: '&'invalid input: '&' range2.getStartRevision() <= range1.getEndRevision(). If this condition evaluates to true, then the ranges intersect.

      Parameters:
      range - range to combine with this range
      considerInheritance - whether inheritance information should be taken into account or not
      Returns:
      true when the ranges intersect, considerInheritance is not set, or if set, both ranges have the same inheritance; otherwise false
    • contains

      public boolean contains(SVNMergeRange range, boolean considerInheritance)
      Says whether this range contains the specified range depending on inheritance or not.
      Parameters:
      range - range to check
      considerInheritance - whether inheritance information should be taken into account or not
      Returns:
      true if this range contains the specified range; otherwise false
    • intersects

      public boolean intersects(SVNMergeRange range, boolean considerInheritance)
      Says whether this range intersects the specified range depending on inheritance or not.
      Parameters:
      range - range to check
      considerInheritance - whether inheritance information should be taken into account or not
      Returns:
      true if this range intersects the specified range; otherwise false
    • swapEndPoints

      public SVNMergeRange swapEndPoints()
      Swaps the start revision and the end revision of this merge range object.
      Returns:
      this object itself
    • isInheritable

      public boolean isInheritable()
      Tells whether this merge range should be inherited by treewise descendants of the path to which the range applies.
      Returns:
      true if inheritable; otherwise false
    • setInheritable

      public void setInheritable(boolean isInheritable)
      Sets whether this merge range is inheritable or not. This method is used by SVNKit internals and is not intended for API users.
      Parameters:
      isInheritable - whether this range is inheritable or not
    • dup

      public SVNMergeRange dup()
      Makes an exact copy of this object.
      Returns:
      exact copy of this object
    • toString

      public String toString()
      Return a string representation of this object.
      Overrides:
      toString in class Object
      Returns:
      this object as a string