Class UnknownTargetModel
java.lang.Object
com.ibm.wala.dalvik.ipa.callgraph.androidModel.AndroidModel
com.ibm.wala.dalvik.ipa.callgraph.androidModel.stubs.UnknownTargetModel
- All Implemented Interfaces:
IClassHierarchyDweller
This Model is used to start an Android-Component of unknown Target.
All internal Components of a Type (if given) then an ExternalModel is called. Used by the IntentContextInterpreter.
- Since:
- 2013-10-18
- Author:
- Tobias Blaschke <code@tobiasblaschke.de>
- See Also:
-
Field Summary
-
Constructor Summary
ConstructorDescriptionUnknownTargetModel
(IClassHierarchy cha, AnalysisOptions options, IAnalysisCacheView cache, AndroidComponent target) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
build
(Atom name, Collection<? extends AndroidEntryPoint> entrypoints) Generate the SummarizedMethod for the model (in this.model).Building the SummarizedMethod is delayed upon the first class to this method.protected boolean
The UnknownTargetModel does not call any entrypoints on it's own.Methods inherited from class com.ibm.wala.dalvik.ipa.callgraph.androidModel.AndroidModel
build, getClassHierarchy, getDeclaringClass, getDescriptor, getMethodAs, getMethodEncap, getName, getReturnType, isStatic, toString
-
Field Details
-
name
-
-
Constructor Details
-
UnknownTargetModel
public UnknownTargetModel(IClassHierarchy cha, AnalysisOptions options, IAnalysisCacheView cache, AndroidComponent target) - Parameters:
target
- Component Type, may be null: No restrictions are imposed on AndroidModel then
-
-
Method Details
-
selectEntryPoint
The UnknownTargetModel does not call any entrypoints on it's own.Instead it first creates a restricted AndroidModel and an ExternalModel. These are actually called.
- Overrides:
selectEntryPoint
in classAndroidModel
- Parameters:
ep
- The EntryPoint in question- Returns:
- if the given EntryPoint shall be part of the model
-
getMethod
Description copied from class:AndroidModel
Building the SummarizedMethod is delayed upon the first class to this method.- Overrides:
getMethod
in classAndroidModel
- Returns:
- the method for this model as generated by build()
- Throws:
CancelException
-
build
protected void build(Atom name, Collection<? extends AndroidEntryPoint> entrypoints) throws CancelException Description copied from class:AndroidModel
Generate the SummarizedMethod for the model (in this.model).The actual generated model depends on the on the properties of this overloaded class. Most generated methods should reside in the AndroidModelClass and take AndroidComponents as well as some parameters (these marked REUSE) to the EntryPoints of the components.
Use
AndroidModel.getMethod()
to retrieve the method generated here or getMethodAs to get a version which is wrapped to another signature.- Overrides:
build
in classAndroidModel
- Parameters:
name
- The name the generated method will be known asentrypoints
- The functions to call additionally to boot-code and XXX- Throws:
CancelException
-