public static class JvmTaintBamCpaRun.Builder extends JvmBamCpaRun.Builder
JvmTaintBamCpaRun
. It assumes either the best performing parameters or the most basic one, if there is no absolute benefit.Modifier and Type | Field and Description |
---|---|
protected MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<JvmTaintSource>>> |
followerHeapMapAbstractStateFactory |
protected MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> |
followerHeapNodeMapAbstractStateFactory |
protected MethodSignature |
mainSignature |
protected MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<Reference>>> |
principalHeapMapAbstractStateFactory |
protected MapAbstractStateFactory<java.lang.String,SetAbstractState<Reference>> |
principalHeapNodeMapAbstractStateFactory |
protected MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> |
staticFieldMapAbstractStateFactory |
protected java.util.Set<? extends JvmTaintSource> |
taintSources |
cfa, heapModel
abortOperator, maxCallStackDepth, reduceHeap
Constructor and Description |
---|
Builder() |
Modifier and Type | Method and Description |
---|---|
JvmTaintBamCpaRun<?> |
build()
Returns the
JvmTaintBamCpaRun for given parameters. |
JvmTaintBamCpaRun.Builder |
setAbortOperator(AbortOperator abortOperator)
Sets the abort operator for premature CPA algorithm termination.
|
JvmTaintBamCpaRun.Builder |
setCfa(JvmCfa cfa)
Sets the control flow automaton.
|
JvmTaintBamCpaRun.Builder |
setFollowerHeapMapAbstractStateFactory(MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<JvmTaintSource>>> followerHeapMapAbstractStateFactory)
Sets the map abstract state factory used for constructing the mapping from references to objects in the follower heap model.
|
JvmTaintBamCpaRun.Builder |
setFollowerHeapNodeMapAbstractStateFactory(MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> followerHeapNodeMapAbstractStateFactory)
Sets the map abstract state factory used for constructing the mapping from fields to values in the follower heap model.
|
JvmTaintBamCpaRun.Builder |
setHeapModel(HeapModel heapModel)
Sets the heap model.
|
JvmTaintBamCpaRun.Builder |
setMainSignature(MethodSignature mainSignature)
Sets the signature of the method the analysis starts from.
|
JvmTaintBamCpaRun.Builder |
setMaxCallStackDepth(int maxCallStackDepth)
Sets the call stack limit for the interprocedural analysis.
|
JvmTaintBamCpaRun.Builder |
setPrincipalHeapMapAbstractStateFactory(MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<Reference>>> principalHeapMapAbstractStateFactory)
Sets the map abstract state factory used for constructing the mapping from references to objects in the principal heap model.
|
JvmTaintBamCpaRun.Builder |
setPrincipalHeapNodeMapAbstractStateFactory(MapAbstractStateFactory<java.lang.String,SetAbstractState<Reference>> principalHeapNodeMapAbstractStateFactory)
Sets the map abstract state factory used for constructing the mapping from fields to values in the principal heap model.
|
JvmTaintBamCpaRun.Builder |
setReduceHeap(boolean reduceHeap)
Sets whether the heap should be reduced before method calls.
|
JvmTaintBamCpaRun.Builder |
setStaticFieldMapAbstractStateFactory(MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> staticFieldMapAbstractStateFactory)
Sets the static field map abstract state factory.
|
JvmTaintBamCpaRun.Builder |
setTaintSources(java.util.Set<? extends JvmTaintSource> taintSources)
Sets the taint sources.
|
protected MethodSignature mainSignature
protected java.util.Set<? extends JvmTaintSource> taintSources
protected MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> staticFieldMapAbstractStateFactory
protected MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<Reference>>> principalHeapMapAbstractStateFactory
protected MapAbstractStateFactory<java.lang.String,SetAbstractState<Reference>> principalHeapNodeMapAbstractStateFactory
protected MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<JvmTaintSource>>> followerHeapMapAbstractStateFactory
protected MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> followerHeapNodeMapAbstractStateFactory
public JvmTaintBamCpaRun<?> build()
JvmTaintBamCpaRun
for given parameters.build
in class JvmBamCpaRun.Builder
public JvmTaintBamCpaRun.Builder setMaxCallStackDepth(int maxCallStackDepth)
BamCpaRun.Builder
setMaxCallStackDepth
in class JvmBamCpaRun.Builder
public JvmTaintBamCpaRun.Builder setAbortOperator(AbortOperator abortOperator)
BamCpaRun.Builder
setAbortOperator
in class JvmBamCpaRun.Builder
public JvmTaintBamCpaRun.Builder setReduceHeap(boolean reduceHeap)
BamCpaRun.Builder
setReduceHeap
in class JvmBamCpaRun.Builder
public JvmTaintBamCpaRun.Builder setCfa(JvmCfa cfa)
JvmBamCpaRun.Builder
setCfa
in class JvmBamCpaRun.Builder
public JvmTaintBamCpaRun.Builder setHeapModel(HeapModel heapModel)
JvmBamCpaRun.Builder
setHeapModel
in class JvmBamCpaRun.Builder
public JvmTaintBamCpaRun.Builder setTaintSources(java.util.Set<? extends JvmTaintSource> taintSources)
public JvmTaintBamCpaRun.Builder setMainSignature(MethodSignature mainSignature)
public JvmTaintBamCpaRun.Builder setStaticFieldMapAbstractStateFactory(MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> staticFieldMapAbstractStateFactory)
public JvmTaintBamCpaRun.Builder setPrincipalHeapMapAbstractStateFactory(MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<Reference>>> principalHeapMapAbstractStateFactory)
public JvmTaintBamCpaRun.Builder setPrincipalHeapNodeMapAbstractStateFactory(MapAbstractStateFactory<java.lang.String,SetAbstractState<Reference>> principalHeapNodeMapAbstractStateFactory)
public JvmTaintBamCpaRun.Builder setFollowerHeapMapAbstractStateFactory(MapAbstractStateFactory<Reference,HeapNode<SetAbstractState<JvmTaintSource>>> followerHeapMapAbstractStateFactory)
public JvmTaintBamCpaRun.Builder setFollowerHeapNodeMapAbstractStateFactory(MapAbstractStateFactory<java.lang.String,SetAbstractState<JvmTaintSource>> followerHeapNodeMapAbstractStateFactory)