org.glassfish.jersey.internal
Class Errors

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

public class Errors
extends Object

Errors utility used to file processing errors (e.g. validation, provider, resource building errors).

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 (michal.gajdos at oracle.com)

Nested Class Summary
static class Errors.ErrorMessage
          Generic error message.
static class Errors.ErrorMessagesException
          Error message exception.
 
Method Summary
static void error(Object source, String message, boolean isFatal)
          Add an error message to the list of errors.
static void error(String message, boolean isFatal)
          Add an error message to the list of errors.
static void fatal(Object source, String message)
          Add a fatal error message to the list of errors.
static boolean fatalIssuesFound()
          Check whether a fatal error message is present in the list of all errors.
static List<Errors.ErrorMessage> getErrorMessages()
          Get the list of all error messages.
static List<Errors.ErrorMessage> getErrorMessages(boolean afterMark)
          Get the list of error messages.
static void mark()
          Set a mark at a current position in the errors messages list.
static
<T> T
process(Producer<T> producer)
          Invoke given producer task and gather errors.
static void process(Runnable task)
          Invoke given task and gather errors.
static
<T> T
processWithException(Producer<T> producer)
          Invoke given producer task and gather errors.
static void processWithException(Runnable task)
          Invoke given task and gather errors.
static void reset()
          Removes all issues that have been added since the last marked position.
static void unmark()
          Remove a previously set mark, if any.
static void warning(Object source, String message)
          Add a warning message to the list of errors.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

error

public static void error(String message,
                         boolean isFatal)
Add an error message to the list of errors.

Parameters:
message - message of the error.
isFatal - indicates whether this error should be treated as fatal error.

error

public static void error(Object source,
                         String message,
                         boolean isFatal)
Add an error message to the list of errors.

Parameters:
source - source of the error.
message - message of the error.
isFatal - indicates whether this error should be treated as fatal error.

fatal

public static void fatal(Object source,
                         String message)
Add a fatal error message to the list of errors.

Parameters:
source - source of the error.
message - message of the error.

warning

public static void warning(Object source,
                           String message)
Add a warning message to the list of errors.

Parameters:
source - source of the error.
message - message of the error.

fatalIssuesFound

public static boolean fatalIssuesFound()
Check whether a fatal error message is present in the list of all errors.

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.

processWithException

public static <T> T processWithException(Producer<T> producer)
Invoke given producer task and gather errors. 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 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:
task - task to be invoked.

processWithException

public static void processWithException(Runnable task)
Invoke given task and gather errors. 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. If no mark has been set in the errors list, the method call is ignored.



Copyright © 2007-2013 Oracle Corporation. All Rights Reserved. Use is subject to license terms.