Package org.jrd.agent
Class AgentActionWorker
- java.lang.Object
-
- java.lang.Thread
-
- org.jrd.agent.AgentActionWorker
-
- All Implemented Interfaces:
java.lang.Runnable
public class AgentActionWorker extends java.lang.Thread
This class handles the socket accepting and request processing from the decompiler
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static interface
AgentActionWorker.ListInjector<T>
private static interface
AgentActionWorker.ParametrisedRunner
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Boolean
abort
private static java.lang.String
AGENT_ERROR_ID
private InstrumentationProvider
provider
-
Constructor Summary
Constructors Constructor Description AgentActionWorker(java.net.Socket socket, InstrumentationProvider provider)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
closeSocket(java.io.BufferedWriter out, java.net.Socket socket)
private void
executeParametrisedNoReturnCommand(java.io.BufferedReader in, java.io.BufferedWriter out, java.lang.String help, AgentActionWorker.ParametrisedRunner parametrisedRunner)
private void
executeRequest(java.net.Socket socket)
private void
getAllLoadedClasses(java.io.BufferedWriter out, boolean doGetInfo)
private void
getAllOverridesClasses(java.io.BufferedWriter out)
private void
getList(java.io.BufferedWriter out, java.lang.String id, AgentActionWorker.ListInjector<java.lang.String> injector)
private void
initClass(java.io.BufferedReader in, java.io.BufferedWriter out)
private void
receiveByteCode(java.io.BufferedReader in, java.io.BufferedWriter out)
private void
removeOverrides(java.io.BufferedReader in, java.io.BufferedWriter out)
private void
sendByteCode(java.io.BufferedReader in, java.io.BufferedWriter out)
private static java.lang.String
toError(java.lang.String message)
private static java.lang.String
toError(java.lang.Throwable ex)
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, run, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
provider
private InstrumentationProvider provider
-
abort
private java.lang.Boolean abort
-
AGENT_ERROR_ID
private static final java.lang.String AGENT_ERROR_ID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AgentActionWorker
public AgentActionWorker(java.net.Socket socket, InstrumentationProvider provider)
-
-
Method Detail
-
toError
private static java.lang.String toError(java.lang.String message)
-
toError
private static java.lang.String toError(java.lang.Throwable ex)
-
executeRequest
private void executeRequest(java.net.Socket socket)
-
getList
private void getList(java.io.BufferedWriter out, java.lang.String id, AgentActionWorker.ListInjector<java.lang.String> injector) throws java.io.IOException
- Throws:
java.io.IOException
-
getAllLoadedClasses
private void getAllLoadedClasses(java.io.BufferedWriter out, boolean doGetInfo) throws java.io.IOException
- Throws:
java.io.IOException
-
getAllOverridesClasses
private void getAllOverridesClasses(java.io.BufferedWriter out) throws java.io.IOException
- Throws:
java.io.IOException
-
sendByteCode
private void sendByteCode(java.io.BufferedReader in, java.io.BufferedWriter out) throws java.io.IOException
- Throws:
java.io.IOException
-
executeParametrisedNoReturnCommand
private void executeParametrisedNoReturnCommand(java.io.BufferedReader in, java.io.BufferedWriter out, java.lang.String help, AgentActionWorker.ParametrisedRunner parametrisedRunner) throws java.io.IOException
- Throws:
java.io.IOException
-
initClass
private void initClass(java.io.BufferedReader in, java.io.BufferedWriter out) throws java.io.IOException
- Throws:
java.io.IOException
-
removeOverrides
private void removeOverrides(java.io.BufferedReader in, java.io.BufferedWriter out) throws java.io.IOException
- Throws:
java.io.IOException
-
receiveByteCode
private void receiveByteCode(java.io.BufferedReader in, java.io.BufferedWriter out) throws java.io.IOException
- Throws:
java.io.IOException
-
closeSocket
private void closeSocket(java.io.BufferedWriter out, java.net.Socket socket) throws java.io.IOException
- Throws:
java.io.IOException
-
-