soot.jimple.toolkits.thread.transaction
Class TransactionBodyTransformer

java.lang.Object
  extended bysoot.Transformer
      extended bysoot.BodyTransformer
          extended bysoot.jimple.toolkits.thread.transaction.TransactionBodyTransformer

public class TransactionBodyTransformer
extends BodyTransformer


Field Summary
static boolean[] addedGlobalLockObj
           
 
Method Summary
protected  void internalTransform(Body b, FlowSet fs, List groups)
           
protected  void internalTransform(Body b, String phase, Map opts)
          This method is called to perform the transformation itself.
 void redirectTraps(Body b, Unit oldUnit, Unit newUnit)
           
 void synchronizeSingleEntrySingleExitBlock(Body b, Stmt start, Stmt end, Local lockObj)
           
static TransactionBodyTransformer v()
           
 
Methods inherited from class soot.BodyTransformer
transform, transform, transform
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

addedGlobalLockObj

public static boolean[] addedGlobalLockObj
Method Detail

v

public static TransactionBodyTransformer v()

internalTransform

protected void internalTransform(Body b,
                                 String phase,
                                 Map opts)
Description copied from class: BodyTransformer
This method is called to perform the transformation itself. It is declared abstract; subclasses must implement this method by making it the entry point to their actual Body transformation.

Specified by:
internalTransform in class BodyTransformer
Parameters:
b - the body on which to apply the transformation
phase - the phasename for this transform; not typically used by implementations.
opts - the actual computed options; a combination of default options and Scene specified options.

internalTransform

protected void internalTransform(Body b,
                                 FlowSet fs,
                                 List groups)

synchronizeSingleEntrySingleExitBlock

public void synchronizeSingleEntrySingleExitBlock(Body b,
                                                  Stmt start,
                                                  Stmt end,
                                                  Local lockObj)

redirectTraps

public void redirectTraps(Body b,
                          Unit oldUnit,
                          Unit newUnit)