Class DefaultSettingsProblem

java.lang.Object
org.apache.maven.settings.building.DefaultSettingsProblem
All Implemented Interfaces:
SettingsProblem

public class DefaultSettingsProblem extends Object implements SettingsProblem
Describes a problem that was encountered during settings building. A problem can either be an exception that was thrown or a simple string message. In addition, a problem carries a hint about its source, e.g. the settings file that exhibits the problem.
Author:
Benjamin Bentmann
  • Constructor Details

    • DefaultSettingsProblem

      public DefaultSettingsProblem(String message, SettingsProblem.Severity severity, String source, int lineNumber, int columnNumber, Exception exception)
      Creates a new problem with the specified message and exception.
      Parameters:
      message - The message describing the problem, may be null.
      severity - The severity level of the problem, may be null to default to SettingsProblem.Severity.ERROR.
      source - A hint about the source of the problem like a file path, may be null.
      lineNumber - The one-based index of the line containing the problem or -1 if unknown.
      columnNumber - The one-based index of the column containing the problem or -1 if unknown.
      exception - The exception that caused this problem, may be null.
  • Method Details

    • getSource

      public String getSource()
      Description copied from interface: SettingsProblem
      Gets the hint about the source of the problem. While the syntax of this hint is unspecified and depends on the creator of the problem, the general expectation is that the hint provides sufficient information to the user to track the problem back to its origin. A concrete example for such a source hint can be the file path or URL from which the settings were read.
      Specified by:
      getSource in interface SettingsProblem
      Returns:
      The hint about the source of the problem or an empty string if unknown, never null.
    • getLineNumber

      public int getLineNumber()
      Description copied from interface: SettingsProblem
      Gets the one-based index of the line containing the problem. The line number should refer to some text file that is given by SettingsProblem.getSource().
      Specified by:
      getLineNumber in interface SettingsProblem
      Returns:
      The one-based index of the line containing the problem or a non-positive value if unknown.
    • getColumnNumber

      public int getColumnNumber()
      Description copied from interface: SettingsProblem
      Gets the one-based index of the column containing the problem. The column number should refer to some text file that is given by SettingsProblem.getSource().
      Specified by:
      getColumnNumber in interface SettingsProblem
      Returns:
      The one-based index of the column containing the problem or non-positive value if unknown.
    • getLocation

      public String getLocation()
      Description copied from interface: SettingsProblem
      Gets the location of the problem. The location is a user-friendly combination of the values from SettingsProblem.getSource(), SettingsProblem.getLineNumber() and SettingsProblem.getColumnNumber(). The exact syntax of the returned value is undefined.
      Specified by:
      getLocation in interface SettingsProblem
      Returns:
      The location of the problem, never null.
    • getException

      public Exception getException()
      Description copied from interface: SettingsProblem
      Gets the exception that caused this problem (if any).
      Specified by:
      getException in interface SettingsProblem
      Returns:
      The exception that caused this problem or null if not applicable.
    • getMessage

      public String getMessage()
      Description copied from interface: SettingsProblem
      Gets the message that describes this problem.
      Specified by:
      getMessage in interface SettingsProblem
      Returns:
      The message describing this problem, never null.
    • getSeverity

      public SettingsProblem.Severity getSeverity()
      Description copied from interface: SettingsProblem
      Gets the severity level of this problem.
      Specified by:
      getSeverity in interface SettingsProblem
      Returns:
      The severity level of this problem, never null.
    • toString

      public String toString()
      Overrides:
      toString in class Object