public class IbisDebuggerAdvice extends Object implements org.springframework.beans.factory.InitializingBean, ThreadLifeCycleEventListener<nl.nn.ibistesttool.ThreadDebugInfo>, org.springframework.context.ApplicationListener<DebuggerStatusChangedEvent>, IXmlDebugger
Modifier and Type | Class and Description |
---|---|
static class |
IbisDebuggerAdvice.ParallelSenderExecutorWrapper |
Modifier and Type | Field and Description |
---|---|
protected org.apache.logging.log4j.Logger |
log |
Constructor and Description |
---|
IbisDebuggerAdvice() |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet() |
nl.nn.ibistesttool.ThreadDebugInfo |
announceChildThread(Object owner,
String correlationId) |
void |
cancelChildThread(nl.nn.ibistesttool.ThreadDebugInfo threadInfo) |
SenderResult |
debugBlockEnabledSenderInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
Object blockHandle,
Message message,
PipeLineSession session)
|
Object |
debugParameterResolvedTo(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
ParameterValueList alreadyResolvedParameters,
Message message,
PipeLineSession session,
boolean namespaceAware)
|
PipeRunResult |
debugPipeGetInputFrom(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
PipeLine pipeLine,
IPipe pipe,
Message message,
PipeLineSession session)
Provides advice for
CheckSemaphorePipeProcessor.processPipe(PipeLine pipeLine, IPipe pipe, Message message, PipeLineSession session)
CheckSemaphorePipeProcessor is just after InputOutputPipeProcessor, so it sees the effect of the replacements made by the latter. |
PipeRunResult |
debugPipeInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
PipeLine pipeLine,
IPipe pipe,
Message message,
PipeLineSession session)
|
PipeLineResult |
debugPipeLineInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
PipeLine pipeLine,
String messageId,
Message message,
PipeLineSession session)
|
MessageOutputStream |
debugProvideOutputStream(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
PipeLineSession session)
|
<M> M |
debugReplyListenerInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
ICorrelatedPullingListener<M> listener,
String correlationId,
PipeLineSession pipeLineSession) |
SenderResult |
debugSenderGetInputFrom(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
SenderWrapperBase senderWrapperBase,
Message message,
PipeLineSession session)
|
SenderResult |
debugSenderInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
Message message,
PipeLineSession session)
Provides advice for
ISender.sendMessageOrThrow(Message message, PipeLineSession session) |
PipeRunResult |
debugStreamingSenderInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
Message message,
PipeLineSession session,
IForwardTarget next)
|
Object |
debugThreadCreateStartEndAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
Runnable runnable) |
PipeRunResult |
debugValidatorInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint,
PipeLine pipeLine,
IValidator validator,
Message message,
PipeLineSession session,
String messageRoot) |
String |
getCorrelationId(PipeLineSession session) |
ContentHandler |
inspectXml(PipeLineSession session,
String label,
ContentHandler contentHandler,
BiConsumer<AutoCloseable,String> closeOnCloseRegister)
Allow the debugger to see the XML stream.
|
boolean |
isEnabled() |
void |
onApplicationEvent(DebuggerStatusChangedEvent event) |
void |
setEnabled(boolean enable) |
Throwable |
threadAborted(nl.nn.ibistesttool.ThreadDebugInfo ref,
Throwable t) |
<R> R |
threadCreated(nl.nn.ibistesttool.ThreadDebugInfo ref,
R request) |
<R> R |
threadEnded(nl.nn.ibistesttool.ThreadDebugInfo ref,
R result) |
public void afterPropertiesSet() throws Exception
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
Exception
public PipeLineResult debugPipeLineInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, PipeLine pipeLine, String messageId, Message message, PipeLineSession session) throws Throwable
CorePipeLineProcessor.processPipeLine(PipeLine pipeLine, String messageId, Message message, PipeLineSession session, String firstPipe)
Throwable
public PipeRunResult debugPipeInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, PipeLine pipeLine, IPipe pipe, Message message, PipeLineSession session) throws Throwable
InputOutputPipeProcessor.processPipe(PipeLine pipeLine, IPipe pipe, Message message, PipeLineSession session)
Throwable
public PipeRunResult debugPipeGetInputFrom(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, PipeLine pipeLine, IPipe pipe, Message message, PipeLineSession session) throws Throwable
CheckSemaphorePipeProcessor.processPipe(PipeLine pipeLine, IPipe pipe, Message message, PipeLineSession session)
CheckSemaphorePipeProcessor is just after InputOutputPipeProcessor, so it sees the effect of the replacements made by the latter.Throwable
public PipeRunResult debugValidatorInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, PipeLine pipeLine, IValidator validator, Message message, PipeLineSession session, String messageRoot) throws Throwable
Throwable
public SenderResult debugSenderInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, Message message, PipeLineSession session) throws Throwable
ISender.sendMessageOrThrow(Message message, PipeLineSession session)
Throwable
public SenderResult debugBlockEnabledSenderInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, Object blockHandle, Message message, PipeLineSession session) throws Throwable
IBlockEnabledSender.sendMessage(Object blockHandle, Message message, PipeLineSession session)
Throwable
public PipeRunResult debugStreamingSenderInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, Message message, PipeLineSession session, IForwardTarget next) throws Throwable
IStreamingSender.sendMessage(Message message, PipeLineSession session, IForwardTarget next)
Throwable
public MessageOutputStream debugProvideOutputStream(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, PipeLineSession session) throws Throwable
IOutputStreamingSupport.provideOutputStream(PipeLineSession session, IForwardTarget next)
Throwable
public ContentHandler inspectXml(PipeLineSession session, String label, ContentHandler contentHandler, BiConsumer<AutoCloseable,String> closeOnCloseRegister)
IXmlDebugger
inspectXml
in interface IXmlDebugger
public SenderResult debugSenderGetInputFrom(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, SenderWrapperBase senderWrapperBase, Message message, PipeLineSession session) throws Throwable
CacheSenderWrapperProcessor.sendMessage(SenderWrapperBase senderWrapperBase, Message message, PipeLineSession session)
Throwable
public <M> M debugReplyListenerInputOutputAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, ICorrelatedPullingListener<M> listener, String correlationId, PipeLineSession pipeLineSession) throws Throwable
Throwable
public Object debugThreadCreateStartEndAbort(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, Runnable runnable) throws Throwable
Throwable
public nl.nn.ibistesttool.ThreadDebugInfo announceChildThread(Object owner, String correlationId)
announceChildThread
in interface ThreadLifeCycleEventListener<nl.nn.ibistesttool.ThreadDebugInfo>
public void cancelChildThread(nl.nn.ibistesttool.ThreadDebugInfo threadInfo)
cancelChildThread
in interface ThreadLifeCycleEventListener<nl.nn.ibistesttool.ThreadDebugInfo>
public <R> R threadCreated(nl.nn.ibistesttool.ThreadDebugInfo ref, R request)
threadCreated
in interface ThreadLifeCycleEventListener<nl.nn.ibistesttool.ThreadDebugInfo>
public <R> R threadEnded(nl.nn.ibistesttool.ThreadDebugInfo ref, R result)
threadEnded
in interface ThreadLifeCycleEventListener<nl.nn.ibistesttool.ThreadDebugInfo>
public Throwable threadAborted(nl.nn.ibistesttool.ThreadDebugInfo ref, Throwable t)
threadAborted
in interface ThreadLifeCycleEventListener<nl.nn.ibistesttool.ThreadDebugInfo>
public Object debugParameterResolvedTo(org.aspectj.lang.ProceedingJoinPoint proceedingJoinPoint, ParameterValueList alreadyResolvedParameters, Message message, PipeLineSession session, boolean namespaceAware) throws Throwable
Parameter.getValue(ParameterValueList alreadyResolvedParameters, Message message, PipeLineSession session, boolean namespaceAware)
Throwable
public String getCorrelationId(PipeLineSession session)
public void setEnabled(boolean enable)
public boolean isEnabled()
public void onApplicationEvent(DebuggerStatusChangedEvent event)
onApplicationEvent
in interface org.springframework.context.ApplicationListener<DebuggerStatusChangedEvent>
Copyright © 2023 Frank!Framework. All rights reserved.