org.apache.subversion.javahl.types
Class Mergeinfo

java.lang.Object
  extended by org.apache.subversion.javahl.types.Mergeinfo
All Implemented Interfaces:
Serializable

public class Mergeinfo
extends Object
implements Serializable

Merge history for a path.

See Also:
Serialized Form

Nested Class Summary
static class Mergeinfo.Inheritance
          The three ways to request mergeinfo affecting a given path in ISVNRemote.getMergeinfo(java.lang.Iterable, long, org.apache.subversion.javahl.types.Mergeinfo.Inheritance, boolean).
static class Mergeinfo.LogKind
          Constants to specify which collection of revisions to report in getMergeinfoLog.
 
Constructor Summary
Mergeinfo()
           
Mergeinfo(String mergeinfo)
          Create and populate an instance using the contents of the svn:mergeinfo property.
 
Method Summary
 void addRevisionRange(String mergeSrc, RevisionRange range)
          Add a revision range to the merged revisions for a path.
 void addRevisions(String mergeSrc, List<RevisionRange> ranges)
          Add one or more RevisionRange objects to merge info.
 void addRevisions(String mergeSrc, RevisionRangeList ranges)
           
 Set<String> getPaths()
          Get the merge source URLs.
 List<RevisionRange> getRevisionRange(String mergeSrc)
          Get the RevisionRange objects for the specified merge source URL
 RevisionRangeList getRevisionRangeList(String mergeSrc)
          Like #getReivsionRange, but returns a RevisionRangeList.
 List<RevisionRange> getRevisions(String mergeSrc)
          Get the revision ranges for the specified merge source URL.
 void loadFromMergeinfoProperty(String mergeinfo)
          Parse the svn:mergeinfo property to populate the merge source URLs and revision ranges of this instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Mergeinfo

public Mergeinfo()

Mergeinfo

public Mergeinfo(String mergeinfo)
Create and populate an instance using the contents of the svn:mergeinfo property.

Parameters:
mergeinfo - svn:mergeinfo property value.
Method Detail

addRevisions

public void addRevisions(String mergeSrc,
                         List<RevisionRange> ranges)
Add one or more RevisionRange objects to merge info. If the merge source is already stored, the list of revisions is replaced.

Parameters:
mergeSrc - The merge source URL.
ranges - RevisionRange objects to add.
Throws:
SubversionException - If range list contains objects of type other than RevisionRange.

addRevisions

public void addRevisions(String mergeSrc,
                         RevisionRangeList ranges)

addRevisionRange

public void addRevisionRange(String mergeSrc,
                             RevisionRange range)
Add a revision range to the merged revisions for a path. If the merge source already has associated revision ranges, add the revision range to the existing list.

Parameters:
mergeSrc - The merge source URL.
range - The revision range to add.

getPaths

public Set<String> getPaths()
Get the merge source URLs.

Returns:
The merge source URLs.

getRevisions

public List<RevisionRange> getRevisions(String mergeSrc)
Get the revision ranges for the specified merge source URL.

Parameters:
mergeSrc - The merge source URL, or null.
Returns:
List of RevisionRange objects, or null.

getRevisionRange

public List<RevisionRange> getRevisionRange(String mergeSrc)
Get the RevisionRange objects for the specified merge source URL

Parameters:
mergeSrc - The merge source URL, or null.
Returns:
Array of RevisionRange objects, or null.

getRevisionRangeList

public RevisionRangeList getRevisionRangeList(String mergeSrc)
Like #getReivsionRange, but returns a RevisionRangeList.


loadFromMergeinfoProperty

public void loadFromMergeinfoProperty(String mergeinfo)
Parse the svn:mergeinfo property to populate the merge source URLs and revision ranges of this instance.

Parameters:
mergeinfo - svn:mergeinfo property value.