Package org.jboss.byteman.contrib.dtest
Class BytemanTestHelper
- java.lang.Object
-
- org.jboss.byteman.rule.helper.Helper
-
- org.jboss.byteman.contrib.dtest.BytemanTestHelper
-
public class BytemanTestHelper extends Helper
Helper class containing functions used by Byteman rules created by the dtest framework.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static int
DEFAULT_RMI_PORT
private static java.rmi.registry.Registry
registry
static java.lang.String
RMIREGISTRY_PORT_PROPERTY_NAME
private static java.util.Map<java.lang.String,java.util.Map<java.lang.Object,java.lang.Integer>>
targetInstances
-
Constructor Summary
Constructors Constructor Description BytemanTestHelper(Rule rule)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.Object[]
convertForRemoting(java.lang.Object[] input)
Convert Objects to their String representation for transmission over RMI.boolean
debug(java.lang.String text, java.lang.Object object0)
Print a message during rule execution.void
remoteTrace(java.lang.String className, java.lang.String methodName, java.lang.Object[] dollarStar)
Send trace information to a remote listener.-
Methods inherited from class org.jboss.byteman.rule.helper.Helper
activated, addCountDown, callerCheck, callerEquals, callerEquals, callerEquals, callerEquals, callerEquals, callerEquals, callerEquals, callerEquals, callerEquals, callerMatches, callerMatches, callerMatches, callerMatches, callerMatches, callerMatches, callerMatches, callerMatches, callerMatches, clear, clearLinks, clearLinks, closeTrace, countDown, createCountDown, createCounter, createCounter, createJoin, createLinkMap, createRendezvous, createRendezvous, createTimer, deactivated, debug, decrementCounter, delay, deleteCounter, deleteLinkMap, deleteRendezvous, deleteTimer, err, errTraceException, flag, flagged, formatAllStacks, formatAllStacks, formatAllStacks, formatAllStacks, formatStack, formatStack, formatStack, formatStack, formatStackBetween, formatStackBetween, formatStackBetween, formatStackBetween, formatStackBetween, formatStackBetween, formatStackBetweenMatches, formatStackBetweenMatches, formatStackBetweenMatches, formatStackBetweenMatches, formatStackBetweenMatches, formatStackBetweenMatches, formatStackMatching, formatStackMatching, formatStackMatching, formatStackMatching, formatStackMatching, formatStackMatching, formatStackRange, formatThreadStack, formatThreadStack, formatThreadStack, formatThreadStack, getCountDown, getElapsedTimeFromTimer, getObjectSize, getRendezvous, getStack, incrementCounter, incrementCounter, installed, isCountDown, isJoin, isRendezvous, joinEnlist, joinWait, joinWait, killJVM, killJVM, killThread, link, link, linked, linked, linkNames, linkNames, linkValues, linkValues, matchIndex, noisy, noisyTraceException, openTrace, openTrace, out, outTraceException, printFrame, printlnFrame, readCounter, readCounter, rendezvous, rendezvous, resetTimer, setTriggering, signalKill, signalKill, signalThrow, signalThrow, signalWake, signalWake, toString, trace, trace, traceAllStacks, traceAllStacks, traceAllStacks, traceAllStacks, traceAllStacks, traceAllStacks, traceClose, traceln, traceln, traceOpen, traceOpen, traceStack, traceStack, traceStack, traceStack, traceStack, traceStack, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetween, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackBetweenMatches, traceStackMatching, traceStackMatching, traceStackMatching, traceStackMatching, traceStackMatching, traceStackMatching, traceStackMatching, traceStackMatching, traceStackMatching, traceStackRange, traceThreadStack, traceThreadStack, traceThreadStack, traceThreadStack, traceThreadStack, traceThreadStack, triggerIndex, uninstalled, unlink, unlink, verbose, verboseTraceException, waitFor, waitFor, waiting
-
-
-
-
Field Detail
-
RMIREGISTRY_PORT_PROPERTY_NAME
public static final java.lang.String RMIREGISTRY_PORT_PROPERTY_NAME
- See Also:
- Constant Field Values
-
DEFAULT_RMI_PORT
static final int DEFAULT_RMI_PORT
- See Also:
- Constant Field Values
-
targetInstances
private static java.util.Map<java.lang.String,java.util.Map<java.lang.Object,java.lang.Integer>> targetInstances
-
registry
private static java.rmi.registry.Registry registry
-
-
Constructor Detail
-
BytemanTestHelper
public BytemanTestHelper(Rule rule) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-
Method Detail
-
debug
public boolean debug(java.lang.String text, java.lang.Object object0)
Print a message during rule execution. n.b. this always returns true which means it can be invoked during condition execution- Parameters:
text
- the message to be printed as trace outputobject0
- an object, typically the rule target, whose String representation will be added to the output.- Returns:
- true
-
remoteTrace
public void remoteTrace(java.lang.String className, java.lang.String methodName, java.lang.Object[] dollarStar) throws java.lang.Exception
Send trace information to a remote listener. A Rule will normally be installed to invoke this on entry to each method of interest.- Parameters:
className
- the name of the instrumented, i.e. traced, classmethodName
- the name of the traced method.dollarStar
- the method args starting with this- Throws:
java.lang.Exception
- if the info cannot be sent- See Also:
InstrumentedClass#trace
-
convertForRemoting
private java.lang.Object[] convertForRemoting(java.lang.Object[] input)
Convert Objects to their String representation for transmission over RMI.- Parameters:
input
- An Array of Objects, possibly including nulls.- Returns:
- An Array of length equivalent to the input, containing corresponding nulls or the String representation of the input.
-
-