Class PathBasedAnalysisInputLocation
java.lang.Object
sootup.java.bytecode.frontend.inputlocation.PathBasedAnalysisInputLocation
- All Implemented Interfaces:
AnalysisInputLocation
- Direct Known Subclasses:
ArchiveBasedAnalysisInputLocation
,ClassFileBasedAnalysisInputLocation
public abstract class PathBasedAnalysisInputLocation
extends Object
implements AnalysisInputLocation
Base class for
PathBasedAnalysisInputLocation
s that can be located by a Path
object.- Author:
- Manuel Benz created on 22.05.18, Kaustubh Kelkar updated on 30.07.2020
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final List<BodyInterceptor>
protected Collection<Path>
protected Path
protected final SourceType
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
PathBasedAnalysisInputLocation
(Path path, SourceType srcType) protected
PathBasedAnalysisInputLocation
(Path path, SourceType srcType, List<BodyInterceptor> bodyInterceptors) protected
PathBasedAnalysisInputLocation
(Path path, SourceType srcType, List<BodyInterceptor> bodyInterceptors, Collection<Path> ignoredPaths) -
Method Summary
Modifier and TypeMethodDescriptioncreate
(Path path, SourceType sourceType) create
(Path path, SourceType srcType, List<BodyInterceptor> bodyInterceptors) create
(Path path, SourceType srcType, List<BodyInterceptor> bodyInterceptors, Collection<Path> ignoredPaths) protected String
protected Optional<JavaSootClassSource>
getClassSourceInternal
(JavaClassType signature, Path path, ClassProvider classProvider) protected Optional<JavaSootClassSource>
getSingleClass
(JavaClassType signature, Path path, ClassProvider classProvider) If the AnalysisInputLocation is initialized with the SourceType then this method should return that specific SourceType.protected Stream<JavaSootClassSource>
walkDirectory
(Path dirPath, IdentifierFactory factory, ClassProvider classProvider) returns a Autocloseable resource that must be closed!Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface sootup.core.inputlocation.AnalysisInputLocation
getClassSource, getClassSources
-
Field Details
-
path
-
ignoredPaths
-
sourceType
-
bodyInterceptors
-
-
Constructor Details
-
PathBasedAnalysisInputLocation
-
PathBasedAnalysisInputLocation
protected PathBasedAnalysisInputLocation(@Nonnull Path path, @Nonnull SourceType srcType, @Nonnull List<BodyInterceptor> bodyInterceptors) -
PathBasedAnalysisInputLocation
protected PathBasedAnalysisInputLocation(@Nonnull Path path, @Nonnull SourceType srcType, @Nonnull List<BodyInterceptor> bodyInterceptors, @Nonnull Collection<Path> ignoredPaths)
-
-
Method Details
-
getSourceType
Description copied from interface:AnalysisInputLocation
If the AnalysisInputLocation is initialized with the SourceType then this method should return that specific SourceType. This is the default implementation and it returns null when no source type is specified.- Specified by:
getSourceType
in interfaceAnalysisInputLocation
- Returns:
- returns null as source type
-
getBodyInterceptors
- Specified by:
getBodyInterceptors
in interfaceAnalysisInputLocation
-
create
@Nonnull public static PathBasedAnalysisInputLocation create(@Nonnull Path path, @Nonnull SourceType sourceType) -
create
@Nonnull public static PathBasedAnalysisInputLocation create(@Nonnull Path path, @Nonnull SourceType srcType, @Nonnull List<BodyInterceptor> bodyInterceptors) -
create
@Nonnull public static PathBasedAnalysisInputLocation create(@Nonnull Path path, @Nonnull SourceType srcType, @Nonnull List<BodyInterceptor> bodyInterceptors, @Nonnull Collection<Path> ignoredPaths) -
walkDirectory
@Nonnull protected Stream<JavaSootClassSource> walkDirectory(@Nonnull Path dirPath, @Nonnull IdentifierFactory factory, @Nonnull ClassProvider classProvider) returns a Autocloseable resource that must be closed! -
fromPath
-
getClassSourceInternal
@Nonnull protected Optional<JavaSootClassSource> getClassSourceInternal(@Nonnull JavaClassType signature, @Nonnull Path path, @Nonnull ClassProvider classProvider) -
getSingleClass
protected Optional<JavaSootClassSource> getSingleClass(@Nonnull JavaClassType signature, @Nonnull Path path, @Nonnull ClassProvider classProvider)
-