Class CFFrameProcessor
- java.lang.Object
-
- com.intergral.deep.agent.tracepoint.handler.VariableProcessor
-
- com.intergral.deep.agent.tracepoint.handler.FrameCollector
-
- com.intergral.deep.agent.tracepoint.handler.FrameProcessor
-
- com.intergral.deep.agent.tracepoint.cf.CFFrameProcessor
-
- All Implemented Interfaces:
ISnapshotContext
public class CFFrameProcessor extends FrameProcessor
We want to map the variables from the Java variables to the CF variables. So we have a custom processor for CF that lets us perform this mapping.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.intergral.deep.agent.tracepoint.handler.FrameProcessor
FrameProcessor.IFactory
-
Nested classes/interfaces inherited from class com.intergral.deep.agent.tracepoint.handler.FrameCollector
FrameCollector.IExpressionResult, FrameCollector.IFrameResult, FrameCollector.ILogProcessResult
-
Nested classes/interfaces inherited from class com.intergral.deep.agent.tracepoint.handler.VariableProcessor
VariableProcessor.VariableResponse
-
-
Field Summary
-
Fields inherited from class com.intergral.deep.agent.tracepoint.handler.FrameCollector
evaluator, settings, variables
-
Fields inherited from class com.intergral.deep.agent.tracepoint.handler.VariableProcessor
frameConfig
-
-
Constructor Summary
Constructors Constructor Description CFFrameProcessor(Settings settings, IEvaluator evaluator, Map<String,Object> variables, Collection<TracePointConfig> tracePointConfigs, long[] lineStart, StackTraceElement[] stack, String methodName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
getMethodName(StackTraceElement stackTraceElement, Map<String,Object> variables, int frameIndex)
Get the method name from the stack frame.protected boolean
isAppFrame(StackTraceElement stackTraceElement)
An app frame is defined via the settingsISettings.APP_FRAMES_INCLUDES
andISettings.APP_FRAMES_EXCLUDES
.protected Map<String,Object>
selectVariables(int frameIndex)
Select from the available captured variables the variables we want to process for this frame.-
Methods inherited from class com.intergral.deep.agent.tracepoint.handler.FrameProcessor
canCollect, collect, configureSelf, evaluateExpression, getFilteredTracepoints, getLineStart, reflectionService
-
Methods inherited from class com.intergral.deep.agent.tracepoint.handler.FrameCollector
evaluateWatchExpression, logTracepoint, processAttributes, processFrame, processLogMsg, processNode, processVars
-
Methods inherited from class com.intergral.deep.agent.tracepoint.handler.VariableProcessor
appendChild, appendVariable, checkDepth, checkId, checkVarCount, closeLookup, configureSelf, newVarId, processChildNodes, processVariable
-
-
-
-
Constructor Detail
-
CFFrameProcessor
public CFFrameProcessor(Settings settings, IEvaluator evaluator, Map<String,Object> variables, Collection<TracePointConfig> tracePointConfigs, long[] lineStart, StackTraceElement[] stack, String methodName)
-
-
Method Detail
-
getMethodName
protected String getMethodName(StackTraceElement stackTraceElement, Map<String,Object> variables, int frameIndex)
Description copied from class:FrameCollector
Get the method name from the stack frame.- Overrides:
getMethodName
in classFrameCollector
- Parameters:
stackTraceElement
- the stack frame to processvariables
- the variables for the frameframeIndex
- the frame index- Returns:
- the name of the method
-
isAppFrame
protected boolean isAppFrame(StackTraceElement stackTraceElement)
Description copied from class:FrameCollector
An app frame is defined via the settingsISettings.APP_FRAMES_INCLUDES
andISettings.APP_FRAMES_EXCLUDES
. This gives a way to tell deep that the frame is part of your app and not part of the framework. This is primarily used as a way to filter frames in the UI.- Overrides:
isAppFrame
in classFrameCollector
- Parameters:
stackTraceElement
- the stack frame to process- Returns:
true
if the class name is in the included packages, and not in the excluded packages, elsefalse
.
-
selectVariables
protected Map<String,Object> selectVariables(int frameIndex)
Description copied from class:FrameCollector
Select from the available captured variables the variables we want to process for this frame. This is mainly here to allow for an easy way for CF to map the variables from their capture Java types to the expected CF types.- Overrides:
selectVariables
in classFrameCollector
- Parameters:
frameIndex
- the index of the frame we are processing- Returns:
- the variables available at this frame
-
-