net.sf.statcvs.weblinks.bugs

## Class BugTracker

- java.lang.Object
- - net.sf.statcvs.weblinks.bugs.BugTracker

- Direct Known Subclasses:
    Bugzilla, Mantis

      public abstract class BugTracker
      extends java.lang.Object

  A BugTracker generates links to numbered bugs. We use this to turn bug references in commit log messages (e.g. "Bug #123") into clickable links.
  Version:
    $Id: BugTracker.java,v 1.9 2009/03/09 21:45:42 benoitx Exp $
  Author:
    Richard Cyganiak (richard@cyganiak.de)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static java.util.regex.Pattern` | `bugRegex`
    `static BugTracker` | `NO_BUG_TRACKER` A null object that can be used in place of a real bug tracker.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BugTracker(java.lang.String baseURL)` Creates a new BugTracker instance.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `baseURL()` Returns the bug tracker's base URL.
    `abstract java.lang.String` | `bugURL(java.lang.String bugNumber)` Returns the URL of the bug tracker page about a certain bug.
    `abstract java.lang.String` | `getName()` Returns the name of the bug tracker
    `java.lang.String` | `toHTMLWithLinks(java.lang.String plainTextInput)` Filters a String, e.g.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### bugRegex

          protected static final java.util.regex.Pattern bugRegex

    - #### NO_BUG_TRACKER

          public static final BugTracker NO_BUG_TRACKER

      A null object that can be used in place of a real bug tracker.

  - ### Constructor Detail

    - #### BugTracker

          public BugTracker(java.lang.String baseURL)

      Creates a new BugTracker instance.
      Parameters:
        `baseURL` - The bug tracker's base URL; a slash is appended if it doesn't end in a slash

  - ### Method Detail

    - #### getName

          public abstract java.lang.String getName()

      Returns the name of the bug tracker
      Returns:
        the name of the bug tracker

    - #### baseURL

          public java.lang.String baseURL()

      Returns the bug tracker's base URL.
      Returns:
        The bug tracker's base URL

    - #### bugURL

          public abstract java.lang.String bugURL(java.lang.String bugNumber)

      Returns the URL of the bug tracker page about a certain bug.
      Parameters:
        `bugNumber` - The bug number; one or more digits.
      Returns:
        The URL of the bug page

    - #### toHTMLWithLinks

          public java.lang.String toHTMLWithLinks(java.lang.String plainTextInput)

      Filters a String, e.g. a commit message, replacing bug references with links to the tracker.
      Parameters:
        `plainTextInput` - String to examine for bug references
      Returns:
        A copy of `input`, with bug references replaced with HTML links