jasco.runtime.hotswap1
Class HotSwap
java.lang.Object
jasco.runtime.hotswap1.HotSwap
public class HotSwap
- extends java.lang.Object
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HotSwap
public HotSwap()
saveOriginal
public static void saveOriginal(java.lang.String classname)
saveAdaptedMethods
public static void saveAdaptedMethods(java.lang.String classname,
java.util.Vector adapted)
initUserExcludedTypes
protected static void initUserExcludedTypes(java.lang.String s,
boolean overwrite)
getVM
public static com.sun.jdi.VirtualMachine getVM()
suspendVMWhileSwapping
public static boolean suspendVMWhileSwapping()
hotswaptargetClasses
public static void hotswaptargetClasses(Connector c)
emptyTempFolder
protected static void emptyTempFolder()
emptyFolder
protected static void emptyFolder(java.io.File dir)
transformAspects
protected static boolean transformAspects()
isTestType
protected static boolean isTestType(java.lang.String name)
checkValidType
public static boolean checkValidType(java.lang.String name)
throws java.lang.Exception
- Throws:
java.lang.Exception
transformClassAndMethod
protected static byte[] transformClassAndMethod(com.sun.jdi.ReferenceType type,
java.lang.String methodname)
throws java.lang.Exception
- Throws:
java.lang.Exception
unhotswaptargetClasses
public static void unhotswaptargetClasses(Connector unload)
makeGNUReg
public static java.lang.String makeGNUReg(java.lang.String s)
alreadyTransformed
protected static boolean alreadyTransformed(java.lang.String classname,
java.lang.String methodname)
getMethodname
protected static java.lang.String getMethodname(java.lang.String method)
removeAnnotation
public static java.lang.String removeAnnotation(java.lang.String signature)
getClassname
protected static java.lang.String getClassname(java.lang.String method)
run
public static void run(java.lang.String[] args)
throws java.lang.Exception
- Throws:
java.lang.Exception
connectToHotSwapMachine
protected static void connectToHotSwapMachine(java.lang.Process p)
throws java.lang.Exception
- Throws:
java.lang.Exception
addShutdownHook
protected static void addShutdownHook()
runDefaultHotswapmachine
protected static void runDefaultHotswapmachine(java.lang.String args)
throws java.lang.Exception
- Throws:
java.lang.Exception
useRedirectClassLoader
protected static boolean useRedirectClassLoader()
doExit
protected static void doExit()
interceptClassLoading
protected static void interceptClassLoading(com.sun.jdi.VirtualMachine vmInstance)
transfromClass
protected static byte[] transfromClass(java.lang.String classname,
java.lang.String methodname)
throws java.lang.Exception
- Throws:
java.lang.Exception
main
public static void main(java.lang.String[] args)
throws java.lang.Exception
- Throws:
java.lang.Exception
initClassPool
protected static void initClassPool(javassist.ClassPool p)
throws java.lang.Exception
- Throws:
java.lang.Exception
getClassPool
protected static javassist.ClassPool getClassPool()
redirectClassLoader
protected static void redirectClassLoader()
throws java.lang.Exception
- Throws:
java.lang.Exception
patchClassLoader2
protected static byte[] patchClassLoader2(javassist.CtClass clz)
throws java.lang.Exception
- Throws:
java.lang.Exception
patchClassLoader
protected static byte[] patchClassLoader(javassist.CtClass clz)
throws java.lang.Exception
- Throws:
java.lang.Exception
transformLoadedClass
public static void transformLoadedClass(com.sun.jdi.ReferenceType type)
redirectOutput
public static void redirectOutput(com.sun.jdi.VirtualMachine vm)
redirectOutput
public static void redirectOutput(java.lang.Process process)
checkVM
protected static void checkVM(com.sun.jdi.VirtualMachine theVM)
findLaunchingConnector
protected static com.sun.jdi.connect.LaunchingConnector findLaunchingConnector()
findAttachingConnector
protected static com.sun.jdi.connect.AttachingConnector findAttachingConnector()
connectorArguments
protected static java.util.Map connectorArguments(com.sun.jdi.connect.LaunchingConnector connector,
java.lang.String mainArgs)
- Return the launching connector's arguments.