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, heapModelabortOperator, 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.Builderpublic JvmTaintBamCpaRun.Builder setMaxCallStackDepth(int maxCallStackDepth)
BamCpaRun.BuildersetMaxCallStackDepth in class JvmBamCpaRun.Builderpublic JvmTaintBamCpaRun.Builder setAbortOperator(AbortOperator abortOperator)
BamCpaRun.BuildersetAbortOperator in class JvmBamCpaRun.Builderpublic JvmTaintBamCpaRun.Builder setReduceHeap(boolean reduceHeap)
BamCpaRun.BuildersetReduceHeap in class JvmBamCpaRun.Builderpublic JvmTaintBamCpaRun.Builder setCfa(JvmCfa cfa)
JvmBamCpaRun.BuildersetCfa in class JvmBamCpaRun.Builderpublic JvmTaintBamCpaRun.Builder setHeapModel(HeapModel heapModel)
JvmBamCpaRun.BuildersetHeapModel in class JvmBamCpaRun.Builderpublic 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)