Class Errors

java.lang.Object
org.glassfish.jersey.internal.Errors

public class Errors extends Object
Errors utility used to file processing messages (e.g. validation, provider, resource building errors, hint).

Error filing methods (#warning, #error, #fatal) can be invoked only in the "error scope" which is created by process(Producer) or processWithException(Producer) methods. Filed error messages are present also in this scope.

TODO do not use static thread local?

Author:
Michal Gajdos
  • Method Details

    • error

      public static void error(String message, Severity severity)
      Add an error to the list of messages.
      Parameters:
      message - message of the error.
      severity - indicates severity of added error.
    • error

      public static void error(Object source, String message, Severity severity)
      Add an error to the list of messages.
      Parameters:
      source - source of the error.
      message - message of the error.
      severity - indicates severity of added error.
    • fatal

      public static void fatal(Object source, String message)
      Add a fatal error to the list of messages.
      Parameters:
      source - source of the error.
      message - message of the error.
    • warning

      public static void warning(Object source, String message)
      Add a warning to the list of messages.
      Parameters:
      source - source of the error.
      message - message of the error.
    • hint

      public static void hint(Object source, String message)
      Add a hint to the list of messages.
      Parameters:
      source - source of the error.
      message - message of the error.
    • logErrors

      public static boolean logErrors(boolean afterMark)
      Log errors and return a status flag indicating whether a fatal issue has been found in the error collection.

      The afterMark flag indicates whether only those issues should be logged that were added after a mark has been set.

      Parameters:
      afterMark - if true, only issues added after a mark has been set are returned, if false all issues are returned.
      Returns:
      true if there are any fatal issues present in the collection, false otherwise.
    • fatalIssuesFound

      public static boolean fatalIssuesFound()
      Check whether a fatal error is present in the list of all messages.
      Returns:
      true if there are any fatal issues in this error context, false otherwise.
    • process

      public static <T> T process(Producer<T> producer)
      Invoke given producer task and gather errors.

      After the task is complete all gathered errors are logged. No exception is thrown even if there is a fatal error present in the list of errors.

      Parameters:
      producer - producer task to be invoked.
      Returns:
      the result produced by the task.
    • process

      public static <T> T process(Callable<T> task) throws Exception
      Invoke given callable task and gather messages.

      After the task is complete all gathered errors are logged. Any exception thrown by the throwable is re-thrown.

      Parameters:
      task - callable task to be invoked.
      Returns:
      the result produced by the task.
      Throws:
      Exception - exception thrown by the task.
    • processWithException

      public static <T> T processWithException(Producer<T> producer)
      Invoke given producer task and gather messages.

      After the task is complete all gathered errors are logged. If there is a fatal error present in the list of errors an exception is thrown.

      Parameters:
      producer - producer task to be invoked.
      Returns:
      the result produced by the task.
    • process

      public static void process(Runnable task)
      Invoke given task and gather messages.

      After the task is complete all gathered errors are logged. No exception is thrown even if there is a fatal error present in the list of errors.

      Parameters:
      task - task to be invoked.
    • processWithException

      public static void processWithException(Runnable task)
      Invoke given task and gather messages.

      After the task is complete all gathered errors are logged. If there is a fatal error present in the list of errors an exception is thrown.

      Parameters:
      task - task to be invoked.
    • getErrorMessages

      public static List<Errors.ErrorMessage> getErrorMessages()
      Get the list of all error messages.
      Returns:
      non-null error message list.
    • getErrorMessages

      public static List<Errors.ErrorMessage> getErrorMessages(boolean afterMark)
      Get the list of error messages.

      The afterMark flag indicates whether only those issues should be returned that were added after a mark has been set.

      Parameters:
      afterMark - if true, only issues added after a mark has been set are returned, if false all issues are returned.
      Returns:
      non-null error list.
    • mark

      public static void mark()
      Set a mark at a current position in the errors messages list.
    • unmark

      public static void unmark()
      Remove a previously set mark, if any.
    • reset

      public static void reset()
      Removes all issues that have been added since the last marked position as well as removes the last mark.