|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.aspectj.bridge.MessageUtil
public class MessageUtil
Convenience API's for constructing, printing, and sending messages.
Nested Class Summary | |
---|---|
static interface |
MessageUtil.IMessageRenderer
parameterize rendering behavior for messages |
Field Summary | |
---|---|
static IMessage |
ABORT_NOMESSAGE
|
static IMessage |
ABORT_NOTHING_TO_RUN
|
static IMessage |
ERROR_NOMESSAGE
|
static IMessage |
FAIL_INCOMPLETE
|
static IMessage |
FAIL_NOMESSAGE
|
static MessageUtil.IMessageRenderer |
MESSAGE_ALL
render message without restriction, up to 10K, including throwable |
static MessageUtil.IMessageRenderer |
MESSAGE_LABEL
render message as label, i.e., less than 33 char |
static MessageUtil.IMessageRenderer |
MESSAGE_LABEL_NOLOC
render message as label, i.e., less than 33 char, with no source location |
static MessageUtil.IMessageRenderer |
MESSAGE_LINE
render message as line, i.e., less than 75 char, no internal line sep |
static MessageUtil.IMessageRenderer |
MESSAGE_LINE_FORCE_LOC
render message as line, i.e., less than 75 char, no internal line sep, trying to trim text as needed to end with a full source location |
static MessageUtil.IMessageRenderer |
MESSAGE_MOST
render message without restriction, except any Throwable thrown |
static MessageUtil.IMessageRenderer |
MESSAGE_SCALED
render message more verbosely if it is worse |
static MessageUtil.IMessageRenderer |
MESSAGE_SHORT
render message using toShortString(IMessage)" |
static MessageUtil.IMessageRenderer |
MESSAGE_TOSTRING
render message using its toString() or "((IMessage) null)" |
static MessageUtil.IMessageRenderer |
MESSAGE_WIDELINE
render message as wide line, i.e., less than 256 char, no internal line sep, except any Throwable thrown |
static IMessageHandler |
PICK_ABORT
|
static IMessageHandler |
PICK_ABORT_PLUS
|
static IMessageHandler |
PICK_ALL
|
static IMessageHandler |
PICK_DEBUG
|
static IMessageHandler |
PICK_DEBUG_PLUS
|
static IMessageHandler |
PICK_ERROR
|
static IMessageHandler |
PICK_ERROR_PLUS
|
static IMessageHandler |
PICK_FAIL
|
static IMessageHandler |
PICK_FAIL_PLUS
|
static IMessageHandler |
PICK_INFO
|
static IMessageHandler |
PICK_INFO_PLUS
|
static IMessageHandler |
PICK_WARNING
|
static IMessageHandler |
PICK_WARNING_PLUS
|
static IMessage |
WARNING_NOMESSAGE
|
Method Summary | |
---|---|
static boolean |
abort(IMessageHandler handler,
java.lang.String message)
handle abort message (ignored if handler is null) |
static boolean |
abort(IMessageHandler handler,
java.lang.String message,
java.lang.Throwable t)
create and handle exception message (ignored if handler is null) |
static IMessage |
abort(java.lang.String message)
|
static IMessage |
abort(java.lang.String message,
java.lang.Throwable thrown)
|
static java.lang.String |
addExtraSourceLocations(IMessage message,
java.lang.String baseMessage)
|
static boolean |
debug(IMessageHandler handler,
java.lang.String message)
create and handle debug message (ignored if handler is null) |
static IMessage |
debug(java.lang.String message)
|
static boolean |
error(IMessageHandler handler,
java.lang.String message)
create and handle error message (ignored if handler is null) |
static IMessage |
error(java.lang.String message)
|
static IMessage |
error(java.lang.String message,
ISourceLocation location)
|
static boolean |
fail(IMessageHandler handler,
java.lang.String message)
create and handle fail message (ignored if handler is null) |
static boolean |
fail(IMessageHandler handler,
java.lang.String message,
java.lang.Throwable thrown)
create and handle fail message (ignored if handler is null) |
static IMessage |
fail(java.lang.String message)
|
static IMessage |
fail(java.lang.String message,
java.lang.Throwable thrown)
Create fail message. |
static IMessage.Kind |
getKind(java.lang.String kind)
Map to the kind of messages associated with this string key. |
static java.util.List<IMessage> |
getMessages(IMessageHolder holder,
IMessage.Kind kind,
boolean orGreater,
java.lang.String infix)
|
static java.util.List<IMessage> |
getMessages(java.util.List<IMessage> messages,
IMessage.Kind kind)
Extract messages of type kind from the input list. |
static IMessage[] |
getMessagesExcept(IMessageHolder holder,
IMessage.Kind kind,
boolean orGreater)
Select all messages in holder except those of the same kind (optionally or greater). |
static boolean |
handleAll(IMessageHandler sink,
IMessage[] sources,
boolean fastFail)
Handle messages in the sink. |
static boolean |
handleAll(IMessageHandler sink,
IMessageHolder source,
boolean fastFail)
Handle all messages in the second handler using the first |
static boolean |
handleAll(IMessageHandler sink,
IMessageHolder source,
IMessage.Kind kind,
boolean orGreater,
boolean fastFail)
Handle messages in the second handler using the first |
static boolean |
handleAllExcept(IMessageHandler sink,
IMessageHolder source,
IMessage.Kind kind,
boolean orGreater,
boolean fastFail)
Handle messages in the second handler using the first if they are NOT of this kind (optionally, or greater). |
static java.io.PrintStream |
handlerPrintStream(IMessageHandler handler,
IMessage.Kind kind,
java.io.OutputStream overage,
java.lang.String prefix)
Factory for handler adapted to PrintStream XXX weak - only handles println(String) |
static boolean |
info(IMessageHandler handler,
java.lang.String message)
create and handle info message (ignored if handler is null) |
static IMessage |
info(java.lang.String message)
|
static IMessageHandler |
makeSelector(IMessage.Kind kind,
boolean orGreater,
java.lang.String infix)
Make an IMessageHandler that handles IMessage if they have the right kind (or greater) and contain some infix String. |
static int |
numMessages(java.util.List<IMessage> messages,
IMessage.Kind kind,
boolean orGreater)
|
static void |
print(java.io.PrintStream out,
IMessageHolder messageHolder)
Print all message to the print stream, starting each on a new line |
static void |
print(java.io.PrintStream out,
IMessageHolder holder,
java.lang.String prefix)
Print all message to the print stream, starting each on a new line, with a prefix. |
static void |
print(java.io.PrintStream out,
IMessageHolder holder,
java.lang.String prefix,
MessageUtil.IMessageRenderer renderer)
Print all message to the print stream, starting each on a new line, with a prefix and using a renderer. |
static void |
print(java.io.PrintStream out,
IMessageHolder holder,
java.lang.String prefix,
MessageUtil.IMessageRenderer renderer,
IMessageHandler selector)
Print all message to the print stream, starting each on a new line, with a prefix and using a renderer. |
static void |
print(java.io.PrintStream out,
IMessageHolder holder,
java.lang.String prefix,
MessageUtil.IMessageRenderer renderer,
IMessageHandler selector,
boolean printSummary)
|
static void |
printMessageCounts(java.io.PrintStream out,
IMessageHolder messageHolder)
Print total counts message to the print stream, starting each on a new line |
static void |
printMessageCounts(java.io.PrintStream out,
IMessageHolder holder,
java.lang.String prefix)
|
static java.lang.String |
renderCounts(IMessageHolder holder)
|
static java.lang.String |
renderMessage(IMessage message)
This renders IMessage as String, ignoring empty elements and eliding any thrown stack traces. |
static java.lang.String |
renderMessage(IMessage message,
boolean elide)
This renders IMessage as String, ignoring empty elements and eliding any thrown. |
static java.lang.String |
renderMessageLine(IMessage message,
int textScale,
int locScale,
int max)
Render message in a line. |
static java.lang.String |
renderSourceLocation(ISourceLocation loc)
Render ISourceLocation to String, ignoring empty elements (null or ISourceLocation.NO_FILE or ISourceLocation.NO_COLUMN (though implementations may return 0 from getColumn() when passed NO_COLUMN as input)). |
static java.lang.String |
toShortString(IMessage message)
|
static IMessage[] |
visitMessages(java.util.Collection<IMessage> messages,
IMessageHandler visitor,
boolean accumulate,
boolean abortOnFail)
Run visitor over a collection of messages, optionally accumulating those accepted by the visitor |
static IMessage[] |
visitMessages(IMessage[] messages,
IMessageHandler visitor,
boolean accumulate,
boolean abortOnFail)
Run visitor over the set of messages in holder, optionally accumulating those accepted by the visitor |
static IMessage[] |
visitMessages(IMessageHolder holder,
IMessageHandler visitor,
boolean accumulate,
boolean abortOnFail)
Run visitor over the set of messages in holder, optionally accumulating those accepted by the visitor |
static boolean |
warn(IMessageHandler handler,
java.lang.String message)
create and handle warn message (ignored if handler is null) |
static IMessage |
warn(java.lang.String message)
|
static IMessage |
warn(java.lang.String message,
ISourceLocation location)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final IMessage ABORT_NOTHING_TO_RUN
public static final IMessage FAIL_INCOMPLETE
public static final IMessage ABORT_NOMESSAGE
public static final IMessage FAIL_NOMESSAGE
public static final IMessage ERROR_NOMESSAGE
public static final IMessage WARNING_NOMESSAGE
public static final IMessageHandler PICK_ALL
public static final IMessageHandler PICK_ABORT
public static final IMessageHandler PICK_DEBUG
public static final IMessageHandler PICK_ERROR
public static final IMessageHandler PICK_FAIL
public static final IMessageHandler PICK_INFO
public static final IMessageHandler PICK_WARNING
public static final IMessageHandler PICK_ABORT_PLUS
public static final IMessageHandler PICK_DEBUG_PLUS
public static final IMessageHandler PICK_ERROR_PLUS
public static final IMessageHandler PICK_FAIL_PLUS
public static final IMessageHandler PICK_INFO_PLUS
public static final IMessageHandler PICK_WARNING_PLUS
public static final MessageUtil.IMessageRenderer MESSAGE_SCALED
public static final MessageUtil.IMessageRenderer MESSAGE_LABEL
public static final MessageUtil.IMessageRenderer MESSAGE_LABEL_NOLOC
public static final MessageUtil.IMessageRenderer MESSAGE_LINE
public static final MessageUtil.IMessageRenderer MESSAGE_LINE_FORCE_LOC
public static final MessageUtil.IMessageRenderer MESSAGE_ALL
public static final MessageUtil.IMessageRenderer MESSAGE_MOST
public static final MessageUtil.IMessageRenderer MESSAGE_WIDELINE
public static final MessageUtil.IMessageRenderer MESSAGE_TOSTRING
public static final MessageUtil.IMessageRenderer MESSAGE_SHORT
Method Detail |
---|
public static boolean abort(IMessageHandler handler, java.lang.String message)
public static boolean abort(IMessageHandler handler, java.lang.String message, java.lang.Throwable t)
public static boolean fail(IMessageHandler handler, java.lang.String message)
public static boolean fail(IMessageHandler handler, java.lang.String message, java.lang.Throwable thrown)
public static boolean error(IMessageHandler handler, java.lang.String message)
public static boolean warn(IMessageHandler handler, java.lang.String message)
public static boolean debug(IMessageHandler handler, java.lang.String message)
public static boolean info(IMessageHandler handler, java.lang.String message)
public static IMessage abort(java.lang.String message)
public static IMessage abort(java.lang.String message, java.lang.Throwable thrown)
public static IMessage fail(java.lang.String message)
public static IMessage fail(java.lang.String message, java.lang.Throwable thrown)
public static IMessage error(java.lang.String message, ISourceLocation location)
public static IMessage warn(java.lang.String message, ISourceLocation location)
public static IMessage error(java.lang.String message)
public static IMessage warn(java.lang.String message)
public static IMessage debug(java.lang.String message)
public static IMessage info(java.lang.String message)
public static void printMessageCounts(java.io.PrintStream out, IMessageHolder messageHolder)
messageHolder
- out
- public static void printMessageCounts(java.io.PrintStream out, IMessageHolder holder, java.lang.String prefix)
public static void print(java.io.PrintStream out, IMessageHolder messageHolder)
messageHolder
- out
- #print(PrintStream, String, IMessageHolder, IMessageRenderer, IMessageHandler)
public static void print(java.io.PrintStream out, IMessageHolder holder, java.lang.String prefix)
messageHolder
- out
- #print(PrintStream, String, IMessageHolder, IMessageRenderer, IMessageHandler)
public static void print(java.io.PrintStream out, IMessageHolder holder, java.lang.String prefix, MessageUtil.IMessageRenderer renderer)
messageHolder
- out
- renderer
- IMessageRender to render result - use MESSAGE_LINE if null#print(PrintStream, String, IMessageHolder, IMessageRenderer, IMessageHandler)
public static void print(java.io.PrintStream out, IMessageHolder holder, java.lang.String prefix, MessageUtil.IMessageRenderer renderer, IMessageHandler selector)
{prefix}[{kind} {index}]: {rendering}(where "{index}" (length 3) is the position within the set of like-kinded messages, ignoring selector omissions. Renderers are free to render multi-line output.
out
- the PrintStream sink - return silently if nullmessageHolder
- the IMessageHolder with the messages to printrenderer
- IMessageRender to render result - use MESSAGE_ALL if nullselector
- IMessageHandler to select messages to render - if null, do all non-nullpublic static void print(java.io.PrintStream out, IMessageHolder holder, java.lang.String prefix, MessageUtil.IMessageRenderer renderer, IMessageHandler selector, boolean printSummary)
public static java.lang.String toShortString(IMessage message)
public static int numMessages(java.util.List<IMessage> messages, IMessage.Kind kind, boolean orGreater)
public static IMessage[] getMessagesExcept(IMessageHolder holder, IMessage.Kind kind, boolean orGreater)
public static java.util.List<IMessage> getMessages(IMessageHolder holder, IMessage.Kind kind, boolean orGreater, java.lang.String infix)
public static java.util.List<IMessage> getMessages(java.util.List<IMessage> messages, IMessage.Kind kind)
messages
- if null, return EMPTY_LISTkind
- if null, return messagesMessageHandler#getMessages(Kind)
public static IMessage.Kind getKind(java.lang.String kind)
kind
- the String representing the kind of message (IMessage.Kind.toString())
public static IMessage[] visitMessages(IMessageHolder holder, IMessageHandler visitor, boolean accumulate, boolean abortOnFail)
public static IMessage[] visitMessages(IMessage[] messages, IMessageHandler visitor, boolean accumulate, boolean abortOnFail)
public static IMessage[] visitMessages(java.util.Collection<IMessage> messages, IMessageHandler visitor, boolean accumulate, boolean abortOnFail)
messages
- if null or empty, return IMessage.RA_IMessagevisitor
- run visitor.handleMessage(message) on each message - if null and messages not empty, IllegalArgumentExceptionaccumulate
- if true, then return accepted IMessage[]abortOnFail
- if true and visitor returns false, stop visiting
java.lang.IllegalArgumentException
- if any in collection are not instanceof IMessagepublic static IMessageHandler makeSelector(IMessage.Kind kind, boolean orGreater, java.lang.String infix)
kind
- the IMessage.Kind required of the messageorGreater
- if true, also accept messages with greater kinds, as defined by IMessage.Kind.COMPARATORinfix
- the String text to require in the message - may be null or empty to accept any message with the specified kind.
public static java.lang.String renderMessage(IMessage message)
renderSourceLocation(ISourceLocation loc)
public static java.lang.String renderMessage(IMessage message, boolean elide)
renderSourceLocation(ISourceLocation loc)
public static java.lang.String addExtraSourceLocations(IMessage message, java.lang.String baseMessage)
public static java.lang.String renderSourceLocation(ISourceLocation loc)
{file:}line{:column}
public static java.lang.String renderMessageLine(IMessage message, int textScale, int locScale, int max)
max
- the number of characters - forced to 32..10000textScale
- relative proportion to spend on message and/or exception message, relative to source location - if 0,
message is suppressedlocScale
- relative proportion to spend on source location suppressed if 0
public static java.lang.String renderCounts(IMessageHolder holder)
public static java.io.PrintStream handlerPrintStream(IMessageHandler handler, IMessage.Kind kind, java.io.OutputStream overage, java.lang.String prefix)
handler
- the IMessageHandler sink for the messages generatedkind
- the IMessage.Kind of message to createoverage
- the OuputStream for text not captured by the handler (if null, System.out used)
java.lang.IllegalArgumentException
- if kind or handler is nullpublic static boolean handleAll(IMessageHandler sink, IMessageHolder source, boolean fastFail)
handler
- the IMessageHandler sink for all messages in sourceholder
- the IMessageHolder source for all messages to handlefastFail
- if true, stop on first failure
public static boolean handleAll(IMessageHandler sink, IMessageHolder source, IMessage.Kind kind, boolean orGreater, boolean fastFail)
handler
- the IMessageHandler sink for all messages in sourceholder
- the IMessageHolder source for all messages to handlekind
- the IMessage.Kind to select, if not nullorGreater
- if true, also accept greater kindsfastFail
- if true, stop on first failure
public static boolean handleAllExcept(IMessageHandler sink, IMessageHolder source, IMessage.Kind kind, boolean orGreater, boolean fastFail)
handler
- the IMessageHandler sink for all messages in sourceholder
- the IMessageHolder source for all messages to handlekind
- the IMessage.Kind to reject, if not nullorGreater
- if true, also reject greater kindsfastFail
- if true, stop on first failure
public static boolean handleAll(IMessageHandler sink, IMessage[] sources, boolean fastFail)
handler
- the IMessageHandler sink for all messages in sourcesources
- the IMessage[] messages to handlefastFail
- if true, stop on first failure
java.lang.IllegalArgumentException
- if sink is null
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |