public class FieldSourceSinkDefinition extends AbstractSourceSinkDefinition implements IAccessPathBasedSourceSinkDefinition
| 限定符和类型 | 字段和说明 |
|---|---|
protected Set<AccessPathTuple> |
accessPaths |
protected String |
fieldSignature |
category| 构造器和说明 |
|---|
FieldSourceSinkDefinition(String fieldSignature)
Creates a new instance of the
FieldSourceSinkDefinition class |
FieldSourceSinkDefinition(String fieldSignature,
Set<AccessPathTuple> accessPaths)
Creates a new instance of the
FieldSourceSinkDefinition class |
| 限定符和类型 | 方法和说明 |
|---|---|
protected FieldSourceSinkDefinition |
buildNewDefinition(Set<AccessPathTuple> accessPaths)
Factory method for creating a new field-based source/sink definition based on
the current one.
|
protected FieldSourceSinkDefinition |
buildNewDefinition(String fieldSignature,
Set<AccessPathTuple> accessPaths)
Factory method for creating a new field-based source/sink definition based on
the current one.
|
boolean |
equals(Object obj) |
IAccessPathBasedSourceSinkDefinition |
filter(Collection<AccessPathTuple> toFilter)
Filters the source/sink definition to only reference the given access paths
|
Set<AccessPathTuple> |
getAccessPaths()
Gets the access paths on the field that have been defined as sources or sinks
|
Set<AccessPathTuple> |
getAllAccessPaths()
Gets all access paths referenced in this source or sink definition,
regardless of their respective semantics
|
String |
getFieldSignature()
Gets the signature of the referenced Soot field
|
FieldSourceSinkDefinition |
getSinkOnlyDefinition()
Creates a definition which is a subset of this definition that only contains
the sinks
|
FieldSourceSinkDefinition |
getSourceOnlyDefinition()
Creates a definition which is a subset of this definition that only contains
the sources
|
int |
hashCode() |
boolean |
isEmpty()
Checks whether this source/sink definition is empty, i.e., has no concrete
access paths
|
void |
merge(ISourceSinkDefinition other)
Merges the source and sink definitions of the given definition object into
this definition object
|
getCategory, setCategorygetCategory, setCategoryprotected final String fieldSignature
protected Set<AccessPathTuple> accessPaths
public FieldSourceSinkDefinition(String fieldSignature)
FieldSourceSinkDefinition classfieldSignature - The Soot signature of the target fieldpublic FieldSourceSinkDefinition(String fieldSignature, Set<AccessPathTuple> accessPaths)
FieldSourceSinkDefinition classfieldSignature - The Soot signature of the target fieldaccessPaths - The access paths on the field that have been defined as
sources or sinkspublic String getFieldSignature()
public Set<AccessPathTuple> getAccessPaths()
public FieldSourceSinkDefinition getSourceOnlyDefinition()
IAccessPathBasedSourceSinkDefinitiongetSourceOnlyDefinition 在接口中 IAccessPathBasedSourceSinkDefinitiongetSourceOnlyDefinition 在接口中 ISourceSinkDefinitionpublic FieldSourceSinkDefinition getSinkOnlyDefinition()
IAccessPathBasedSourceSinkDefinitiongetSinkOnlyDefinition 在接口中 IAccessPathBasedSourceSinkDefinitiongetSinkOnlyDefinition 在接口中 ISourceSinkDefinitionprotected FieldSourceSinkDefinition buildNewDefinition(Set<AccessPathTuple> accessPaths)
accessPaths - The of access paths for the new definitionprotected FieldSourceSinkDefinition buildNewDefinition(String fieldSignature, Set<AccessPathTuple> accessPaths)
fieldSignature - The field signatureaccessPaths - The of access paths for the new definitionpublic void merge(ISourceSinkDefinition other)
ISourceSinkDefinitionmerge 在接口中 ISourceSinkDefinitionother - The definition object to mergepublic boolean isEmpty()
IAccessPathBasedSourceSinkDefinitionisEmpty 在接口中 IAccessPathBasedSourceSinkDefinitionisEmpty 在接口中 ISourceSinkDefinitionpublic Set<AccessPathTuple> getAllAccessPaths()
IAccessPathBasedSourceSinkDefinitiongetAllAccessPaths 在接口中 IAccessPathBasedSourceSinkDefinitionpublic IAccessPathBasedSourceSinkDefinition filter(Collection<AccessPathTuple> toFilter)
IAccessPathBasedSourceSinkDefinitionfilter 在接口中 IAccessPathBasedSourceSinkDefinitiontoFilter - The access path to which to limit the scope of this
source/sink definitionpublic int hashCode()
hashCode 在类中 AbstractSourceSinkDefinitionpublic boolean equals(Object obj)
equals 在类中 AbstractSourceSinkDefinitionCopyright © 2022 Fraunhofer SIT. All rights reserved.