1) adjust somewhat to recent API changes.

2) fix equals() bug in Statement
3) general cleanups

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1225 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
This commit is contained in:
sjfink 2007-06-01 14:06:26 +00:00
parent a0cfeac136
commit 00f604ee6f
18 changed files with 52 additions and 100 deletions

View File

@ -23,7 +23,7 @@ import com.ibm.wala.classLoader.ModuleEntry;
import com.ibm.wala.ipa.callgraph.AnalysisScope;
import com.ibm.wala.ipa.callgraph.Entrypoint;
import com.ibm.wala.ipa.callgraph.impl.DefaultEntrypoint;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.util.TopLevelArchiveModule;
import com.ibm.wala.types.ClassLoaderReference;
import com.ibm.wala.types.Descriptor;
@ -55,7 +55,7 @@ public class AppClientEntrypoints implements Iterable<Entrypoint> {
/**
* Governing class hierarchy
*/
private final ClassHierarchy cha;
private final IClassHierarchy cha;
/**
* Governing analysis scope
@ -65,15 +65,13 @@ public class AppClientEntrypoints implements Iterable<Entrypoint> {
private final WarningSet warnings;
/**
* Constructor.
*
* @param scope
* scope of analysis
* @param cha
* loaded class hierarchy
* @throws IllegalArgumentException if scope is null
*/
public AppClientEntrypoints(J2EEAnalysisScope scope, ClassHierarchy cha, WarningSet warnings) {
public AppClientEntrypoints(J2EEAnalysisScope scope, IClassHierarchy cha, WarningSet warnings) {
if (scope == null) {
throw new IllegalArgumentException("scope is null");
}

View File

@ -35,7 +35,7 @@ import com.ibm.wala.ipa.callgraph.Context;
import com.ibm.wala.ipa.callgraph.ContextKey;
import com.ibm.wala.ipa.callgraph.impl.Everywhere;
import com.ibm.wala.ipa.callgraph.propagation.SSAContextInterpreter;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.ipa.summaries.SyntheticIR;
import com.ibm.wala.shrikeBT.IInvokeInstruction;
import com.ibm.wala.ssa.DefUse;
@ -75,7 +75,7 @@ public class CommandInterpreter implements SSAContextInterpreter {
/**
* Governing class hierarchy
*/
private final ClassHierarchy cha;
private final IClassHierarchy cha;
/**
* Keep track of analysis warnings
@ -88,7 +88,7 @@ public class CommandInterpreter implements SSAContextInterpreter {
* @param warnings
* object to track analysis warnings
*/
public CommandInterpreter(ClassHierarchy cha, WarningSet warnings) {
public CommandInterpreter(IClassHierarchy cha, WarningSet warnings) {
this.cha = cha;
this.warnings = warnings;
}

View File

@ -31,7 +31,7 @@ import com.ibm.wala.classLoader.Module;
import com.ibm.wala.classLoader.NewSiteReference;
import com.ibm.wala.ipa.callgraph.Entrypoint;
import com.ibm.wala.ipa.callgraph.impl.DefaultEntrypoint;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.types.ClassLoaderReference;
import com.ibm.wala.types.Descriptor;
import com.ibm.wala.types.MemberReference;
@ -55,7 +55,7 @@ import com.ibm.wala.util.warnings.WarningSet;
public class EJBEntrypoints implements Iterable<Entrypoint>, EJBConstants {
static final boolean DEBUG = false;
private final ClassHierarchy cha;
private final IClassHierarchy cha;
/**
* The set of Entrypoint for call graph construction.
@ -114,7 +114,7 @@ public class EJBEntrypoints implements Iterable<Entrypoint>, EJBConstants {
* representation of the analysis scope.
*/
@SuppressWarnings({ "restriction", "unchecked" })
public EJBEntrypoints(ClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData deployment, boolean justMDBs,
public EJBEntrypoints(IClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData deployment, boolean justMDBs,
J2EEClassTargetSelector classTargetSelector, WarningSet warnings) {
this.cha = cha;
this.deployment = deployment;

View File

@ -12,14 +12,14 @@ package com.ibm.wala.j2ee;
import com.ibm.wala.classLoader.IMethod;
import com.ibm.wala.ipa.callgraph.impl.DefaultEntrypoint;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.types.TypeReference;
class EJBLifecycleEntrypoint extends DefaultEntrypoint {
private final TypeReference bean;
EJBLifecycleEntrypoint(IMethod m, ClassHierarchy cha, TypeReference bean) {
EJBLifecycleEntrypoint(IMethod m, IClassHierarchy cha, TypeReference bean) {
super(m, cha);
this.bean = bean;
}

View File

@ -15,7 +15,7 @@ import com.ibm.wala.classLoader.IClassLoader;
import com.ibm.wala.classLoader.NewSiteReference;
import com.ibm.wala.ipa.callgraph.CGNode;
import com.ibm.wala.ipa.callgraph.ClassTargetSelector;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.ipa.summaries.BypassSyntheticClass;
import com.ibm.wala.ipa.summaries.BypassSyntheticClassLoader;
import com.ibm.wala.types.TypeName;
@ -47,7 +47,7 @@ public class J2EEClassTargetSelector implements ClassTargetSelector {
/**
* Governing class hierarchy
*/
private final ClassHierarchy cha;
private final IClassHierarchy cha;
private final BypassSyntheticClassLoader bypassLoader;
@ -61,7 +61,7 @@ public class J2EEClassTargetSelector implements ClassTargetSelector {
* @param bypassLoader
* class loader to deal with J2EE bypass logic
*/
public J2EEClassTargetSelector(ClassTargetSelector parent, DeploymentMetaData metaData, ClassHierarchy cha,
public J2EEClassTargetSelector(ClassTargetSelector parent, DeploymentMetaData metaData, IClassHierarchy cha,
IClassLoader bypassLoader) {
this.cha = cha;
this.parent = parent;

View File

@ -23,7 +23,7 @@ import com.ibm.wala.classLoader.IField;
import com.ibm.wala.classLoader.IMethod;
import com.ibm.wala.classLoader.NewSiteReference;
import com.ibm.wala.classLoader.SyntheticClass;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.ipa.summaries.MethodSummary;
import com.ibm.wala.ipa.summaries.SummarizedMethod;
import com.ibm.wala.shrikeBT.BytecodeConstants;
@ -115,9 +115,9 @@ class J2EEContainerModel extends SyntheticClass implements BytecodeConstants, EJ
/**
* Governing class hierarchy
*/
private final ClassHierarchy cha;
private final IClassHierarchy cha;
J2EEContainerModel(DeploymentMetaData deployment, ClassHierarchy cha) {
J2EEContainerModel(DeploymentMetaData deployment, IClassHierarchy cha) {
super(containerModelRef, cha);
this.cha = cha;
this.deployment = deployment;

View File

@ -14,7 +14,7 @@ import java.util.Iterator;
import com.ibm.wala.ipa.callgraph.Entrypoint;
import com.ibm.wala.ipa.callgraph.impl.ComposedEntrypoints;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.util.Atom;
import com.ibm.wala.util.warnings.WarningSet;
@ -42,7 +42,7 @@ public class J2EEEntrypoints implements Iterable<Entrypoint> {
* @param useEjbEntrypoints
* should the analysis assume external callers on the EJB interfaces?
*/
public J2EEEntrypoints(J2EEAnalysisScope scope, DeploymentMetaData dmd, ClassHierarchy cha, WarningSet warnings,
public J2EEEntrypoints(J2EEAnalysisScope scope, DeploymentMetaData dmd, IClassHierarchy cha, WarningSet warnings,
boolean useEjbEntrypoints) {
ServletEntrypoints servletEntrypoints = new ServletEntrypoints(scope, cha);
J2EEClassTargetSelector classTargetSelector = new J2EEClassTargetSelector(null, dmd, cha, cha.getLoader(scope.getLoader(Atom

View File

@ -27,7 +27,7 @@ import com.ibm.wala.ipa.callgraph.AnalysisScope;
import com.ibm.wala.ipa.callgraph.CGNode;
import com.ibm.wala.ipa.callgraph.MethodTargetSelector;
import com.ibm.wala.ipa.callgraph.impl.FakeRootMethod;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.ipa.summaries.BypassSyntheticClass;
import com.ibm.wala.ipa.summaries.MethodSummary;
import com.ibm.wala.ipa.summaries.SummarizedMethod;
@ -94,7 +94,7 @@ public class J2EEMethodTargetSelector implements MethodTargetSelector, BytecodeC
/**
* the governing class hierarchy
*/
private final ClassHierarchy cha;
private final IClassHierarchy cha;
/**
* A cache of synthetic methods generated so far. Mapping from MethodReference ->
@ -149,7 +149,7 @@ public class J2EEMethodTargetSelector implements MethodTargetSelector, BytecodeC
}
public J2EEMethodTargetSelector(AnalysisScope scope, MethodTargetSelector parent, DeploymentMetaData deployment,
ClassHierarchy cha, ReceiverTypeInferenceCache typeInference, WarningSet warnings) {
IClassHierarchy cha, ReceiverTypeInferenceCache typeInference, WarningSet warnings) {
this.scope = scope;
this.deployment = deployment;
this.warnings = warnings;

View File

@ -11,13 +11,13 @@
package com.ibm.wala.j2ee;
import com.ibm.wala.classLoader.IMethod;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.types.TypeReference;
import com.ibm.wala.util.debug.Assertions;
class MDBEntrypoint extends EJBLifecycleEntrypoint {
MDBEntrypoint(IMethod m, ClassHierarchy cha, TypeReference bean) {
MDBEntrypoint(IMethod m, IClassHierarchy cha, TypeReference bean) {
super(m, cha, bean);
if (Assertions.verifyAssertions) {
Assertions._assert(m.getDescriptor().equals(EJBConstants.onMessageDesc));

View File

@ -19,7 +19,7 @@ import com.ibm.wala.classLoader.IClassLoader;
import com.ibm.wala.classLoader.IMethod;
import com.ibm.wala.ipa.callgraph.Entrypoint;
import com.ibm.wala.ipa.callgraph.impl.DefaultEntrypoint;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.types.ClassLoaderReference;
import com.ibm.wala.types.Descriptor;
import com.ibm.wala.types.MethodReference;
@ -147,13 +147,12 @@ public class ServletEntrypoints implements Iterable<Entrypoint>, EJBConstants {
}
/**
* Constructor.
* @param scope
* scope of analysis
* @param cha
* loaded class hierarchy
*/
public ServletEntrypoints(J2EEAnalysisScope scope, ClassHierarchy cha) {
public ServletEntrypoints(J2EEAnalysisScope scope, IClassHierarchy cha) {
TypeReference servletType = TypeReference.findOrCreate(scope.getExtensionLoader(), servletName);
TypeReference actionServletType = TypeReference.findOrCreate(scope.getApplicationLoader(), actionServlet);

View File

@ -20,8 +20,8 @@ import com.ibm.wala.classLoader.IClassLoader;
import com.ibm.wala.classLoader.IMethod;
import com.ibm.wala.ipa.callgraph.Entrypoint;
import com.ibm.wala.ipa.callgraph.impl.DefaultEntrypoint;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.ClassHierarchyException;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.types.ClassLoaderReference;
import com.ibm.wala.types.Descriptor;
import com.ibm.wala.types.MemberReference;
@ -81,14 +81,12 @@ public class StrutsEntrypoints implements Iterable<Entrypoint>, EJBConstants {
}
/**
* Constructor.
*
* @param scope
* scope of analysis
* @param cha
* loaded class hierarchy
*/
public StrutsEntrypoints(J2EEAnalysisScope scope, ClassHierarchy cha) {
public StrutsEntrypoints(J2EEAnalysisScope scope, IClassHierarchy cha) {
TypeReference actionType = TypeReference.findOrCreate(scope.getApplicationLoader(), actionName);
IClass actionClass = cha.lookupClass(actionType);
@ -136,7 +134,7 @@ public class StrutsEntrypoints implements Iterable<Entrypoint>, EJBConstants {
* @param klass
* an Action
*/
private void addSpeculativeDispatchMethods(IClass klass, ClassHierarchy cha) {
private void addSpeculativeDispatchMethods(IClass klass, IClassHierarchy cha) {
IClass C = klass;
while (C != null) {
for (Iterator<IMethod> it = C.getDeclaredMethods().iterator(); it.hasNext();) {
@ -203,7 +201,7 @@ public class StrutsEntrypoints implements Iterable<Entrypoint>, EJBConstants {
private static class StrutsActionEntrypoint extends DefaultEntrypoint {
private final TypeReference receiver;
public StrutsActionEntrypoint(IClass concreteType, IMethod method, ClassHierarchy cha) {
public StrutsActionEntrypoint(IClass concreteType, IMethod method, IClassHierarchy cha) {
super(method, cha);
receiver = concreteType.getReference();
}

View File

@ -12,7 +12,7 @@ package com.ibm.wala.j2ee.client;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
import com.ibm.wala.ipa.callgraph.CallGraphBuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.DeploymentMetaData;
import com.ibm.wala.j2ee.J2EEAnalysisScope;
import com.ibm.wala.util.warnings.WarningSet;
@ -58,6 +58,6 @@ public interface CallGraphBuilderFactory extends com.ibm.wala.client.CallGraphBu
* preserve PointsTo graph for posterity?
*
*/
CallGraphBuilder make(AnalysisOptions options, ClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData dmd,
CallGraphBuilder make(AnalysisOptions options, IClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData dmd,
WarningSet warnings, boolean keepPointsTo);
}

View File

@ -12,7 +12,7 @@ package com.ibm.wala.j2ee.client.impl;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
import com.ibm.wala.ipa.callgraph.CallGraphBuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.DeploymentMetaData;
import com.ibm.wala.j2ee.J2EEAnalysisScope;
import com.ibm.wala.j2ee.client.CallGraphBuilderFactory;
@ -30,16 +30,7 @@ public class RTABuilderFactory
implements CallGraphBuilderFactory
{
/*
* (non-Javadoc)
*
* @see com.ibm.wala.j2ee.client.CallGraphBuilderFactory#make(com.ibm.wala.ipa.callgraph.AnalysisOptions,
* com.ibm.wala.ipa.cha.ClassHierarchy, java.lang.ClassLoader,
* com.ibm.wala.j2ee.J2EEAnalysisScope,
* com.ibm.wala.j2ee.DeploymentMetaData,
* com.ibm.wala.util.warnings.WarningSet, boolean)
*/
public CallGraphBuilder make(AnalysisOptions options, ClassHierarchy cha, J2EEAnalysisScope scope,
public CallGraphBuilder make(AnalysisOptions options, IClassHierarchy cha, J2EEAnalysisScope scope,
DeploymentMetaData dmd, WarningSet warnings, boolean keepPointsTo) {
return Util.makeRTABuilder(options, cha, getClass().getClassLoader(), scope, dmd, warnings);
}

View File

@ -12,7 +12,7 @@ package com.ibm.wala.j2ee.client.impl;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
import com.ibm.wala.ipa.callgraph.CallGraphBuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.DeploymentMetaData;
import com.ibm.wala.j2ee.J2EEAnalysisScope;
import com.ibm.wala.j2ee.client.CallGraphBuilderFactory;
@ -27,16 +27,7 @@ public class ZeroCFABuilderFactory
implements CallGraphBuilderFactory
{
/*
* (non-Javadoc)
*
* @see com.ibm.wala.j2ee.client.CallGraphBuilderFactory#make(com.ibm.wala.ipa.callgraph.AnalysisOptions,
* com.ibm.wala.ipa.cha.ClassHierarchy, java.lang.ClassLoader,
* com.ibm.wala.j2ee.J2EEAnalysisScope,
* com.ibm.wala.j2ee.DeploymentMetaData,
* com.ibm.wala.util.warnings.WarningSet, boolean)
*/
public CallGraphBuilder make(AnalysisOptions options, ClassHierarchy cha, J2EEAnalysisScope scope,
public CallGraphBuilder make(AnalysisOptions options, IClassHierarchy cha, J2EEAnalysisScope scope,
DeploymentMetaData dmd, WarningSet warnings, boolean keepPointsTo) {
return Util.makeZeroCFABuilder(options, cha, getClass().getClassLoader(), scope, dmd, warnings);
}

View File

@ -12,7 +12,7 @@ package com.ibm.wala.j2ee.client.impl;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
import com.ibm.wala.ipa.callgraph.CallGraphBuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.DeploymentMetaData;
import com.ibm.wala.j2ee.J2EEAnalysisScope;
import com.ibm.wala.j2ee.client.CallGraphBuilderFactory;
@ -30,16 +30,7 @@ public class ZeroContainerCFABuilderFactory
implements CallGraphBuilderFactory
{
/*
* (non-Javadoc)
*
* @see com.ibm.wala.j2ee.client.CallGraphBuilderFactory#make(com.ibm.wala.ipa.callgraph.AnalysisOptions,
* com.ibm.wala.ipa.cha.ClassHierarchy, java.lang.ClassLoader,
* com.ibm.wala.j2ee.J2EEAnalysisScope,
* com.ibm.wala.j2ee.DeploymentMetaData,
* com.ibm.wala.util.warnings.WarningSet, boolean)
*/
public CallGraphBuilder make(AnalysisOptions options, ClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData dmd,
public CallGraphBuilder make(AnalysisOptions options, IClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData dmd,
WarningSet warnings, boolean keepPointsTo) {
return Util.makeZeroContainerCFABuilder(options, cha, getClass().getClassLoader(), scope, dmd, warnings);
}

View File

@ -12,7 +12,7 @@ package com.ibm.wala.j2ee.client.impl;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
import com.ibm.wala.ipa.callgraph.CallGraphBuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.DeploymentMetaData;
import com.ibm.wala.j2ee.J2EEAnalysisScope;
import com.ibm.wala.j2ee.client.CallGraphBuilderFactory;
@ -29,16 +29,7 @@ public class ZeroOneCFABuilderFactory
implements CallGraphBuilderFactory
{
/*
* (non-Javadoc)
*
* @see com.ibm.wala.j2ee.client.CallGraphBuilderFactory#make(com.ibm.wala.ipa.callgraph.AnalysisOptions,
* com.ibm.wala.ipa.cha.ClassHierarchy, java.lang.ClassLoader,
* com.ibm.wala.j2ee.J2EEAnalysisScope,
* com.ibm.wala.j2ee.DeploymentMetaData,
* com.ibm.wala.util.warnings.WarningSet, boolean)
*/
public CallGraphBuilder make(AnalysisOptions options, ClassHierarchy cha, J2EEAnalysisScope scope,
public CallGraphBuilder make(AnalysisOptions options, IClassHierarchy cha, J2EEAnalysisScope scope,
DeploymentMetaData dmd, WarningSet warnings, boolean keepPointsTo) {
return Util.makeZeroOneCFABuilder(options, cha, getClass().getClassLoader(), scope, dmd, warnings);
}

View File

@ -12,7 +12,7 @@ package com.ibm.wala.j2ee.client.impl;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
import com.ibm.wala.ipa.callgraph.CallGraphBuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.DeploymentMetaData;
import com.ibm.wala.j2ee.J2EEAnalysisScope;
import com.ibm.wala.j2ee.client.CallGraphBuilderFactory;
@ -29,16 +29,8 @@ public class ZeroOneContainerCFABuilderFactory
implements CallGraphBuilderFactory
{
/*
* (non-Javadoc)
*
* @see com.ibm.wala.j2ee.client.CallGraphBuilderFactory#make(com.ibm.wala.ipa.callgraph.AnalysisOptions,
* com.ibm.wala.ipa.cha.ClassHierarchy, java.lang.ClassLoader,
* com.ibm.wala.j2ee.J2EEAnalysisScope,
* com.ibm.wala.j2ee.DeploymentMetaData,
* com.ibm.wala.util.warnings.WarningSet, boolean)
*/
public CallGraphBuilder make(AnalysisOptions options, ClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData dmd,
public CallGraphBuilder make(AnalysisOptions options, IClassHierarchy cha, J2EEAnalysisScope scope, DeploymentMetaData dmd,
WarningSet warnings, boolean keepPointsTo) {
return Util.makeZeroOneContainerCFABuilder(options, cha, getClass().getClassLoader(), scope, dmd, warnings);
}

View File

@ -27,6 +27,7 @@ import com.ibm.wala.ipa.callgraph.propagation.cfa.ZeroXInstanceKeys;
import com.ibm.wala.ipa.callgraph.propagation.rta.BasicRTABuilder;
import com.ibm.wala.ipa.cha.ClassHierarchy;
import com.ibm.wala.ipa.cha.ClassHierarchyException;
import com.ibm.wala.ipa.cha.IClassHierarchy;
import com.ibm.wala.j2ee.BeanMetaData;
import com.ibm.wala.j2ee.CommandInterpreter;
import com.ibm.wala.j2ee.DeploymentMetaData;
@ -60,7 +61,7 @@ public class Util {
* @param warnings
* an object which tracks analysis warnings
*/
public static CallGraphBuilder makeRTABuilder(AnalysisOptions options, ClassHierarchy cha, ClassLoader cl, AnalysisScope scope,
public static CallGraphBuilder makeRTABuilder(AnalysisOptions options, IClassHierarchy cha, ClassLoader cl, AnalysisScope scope,
DeploymentMetaData dmd, WarningSet warnings) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultSelectors(options, cha, warnings);
@ -92,7 +93,7 @@ public class Util {
* an object which tracks analysis warnings
* @return a 0-CFA Call Graph Builder.
*/
public static CFABuilder makeZeroCFABuilder(AnalysisOptions options, ClassHierarchy cha, ClassLoader cl, AnalysisScope scope,
public static CFABuilder makeZeroCFABuilder(AnalysisOptions options, IClassHierarchy cha, ClassLoader cl, AnalysisScope scope,
DeploymentMetaData dmd, WarningSet warnings) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultSelectors(options, cha, warnings);
@ -125,7 +126,7 @@ public class Util {
* an object which tracks analysis warnings
* @return a 1-CFA Call Graph Builder.
*/
public static CallGraphBuilder makeOneCFABuilder(AnalysisOptions options, ClassHierarchy cha, ClassLoader cl,
public static CallGraphBuilder makeOneCFABuilder(AnalysisOptions options, IClassHierarchy cha, ClassLoader cl,
AnalysisScope scope, DeploymentMetaData dmd, WarningSet warnings) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultSelectors(options, cha, warnings);
@ -161,7 +162,7 @@ public class Util {
* This version uses the DEDUCED_PLUS_STRINGSTUFF policy to avoid
* disambiguating uninteresting types.
*/
public static CFABuilder makeZeroOneCFABuilder(AnalysisOptions options, ClassHierarchy cha, ClassLoader cl, AnalysisScope scope,
public static CFABuilder makeZeroOneCFABuilder(AnalysisOptions options, IClassHierarchy cha, ClassLoader cl, AnalysisScope scope,
DeploymentMetaData dmd, WarningSet warnings) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultSelectors(options, cha, warnings);
@ -231,7 +232,7 @@ public class Util {
* @return a 0-CFA Call Graph Builder augmented with extra logic for
* containers
*/
public static CFABuilder makeZeroContainerCFABuilder(AnalysisOptions options, ClassHierarchy cha, ClassLoader cl,
public static CFABuilder makeZeroContainerCFABuilder(AnalysisOptions options, IClassHierarchy cha, ClassLoader cl,
AnalysisScope scope, DeploymentMetaData dmd, WarningSet warnings) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultSelectors(options, cha, warnings);
@ -264,7 +265,7 @@ public class Util {
* @return a 0-1-CFA Call Graph Builder augmented with extra logic for
* containers
*/
public static CFABuilder makeZeroOneContainerCFABuilder(AnalysisOptions options, ClassHierarchy cha, ClassLoader cl,
public static CFABuilder makeZeroOneContainerCFABuilder(AnalysisOptions options, IClassHierarchy cha, ClassLoader cl,
AnalysisScope scope, DeploymentMetaData dmd, WarningSet warnings) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultSelectors(options, cha, warnings);
@ -281,7 +282,7 @@ public class Util {
return new ZeroOneContainerCFABuilder(cha, warnings, options, appSelector, appInterpreter, options.getReflectionSpec());
}
public static void addJ2EEBypassLogic(AnalysisOptions options, AnalysisScope scope, DeploymentMetaData dmd, ClassHierarchy cha,
public static void addJ2EEBypassLogic(AnalysisOptions options, AnalysisScope scope, DeploymentMetaData dmd, IClassHierarchy cha,
ReceiverTypeInferenceCache typeInference, WarningSet warn) {
if (cha == null) {
@ -325,7 +326,7 @@ public class Util {
private static final String benignExtSpec = "benignext.xml";
public static void addDefaultJ2EEBypassLogic(AnalysisOptions options, AnalysisScope scope, ClassLoader cl, ClassHierarchy cha) {
public static void addDefaultJ2EEBypassLogic(AnalysisOptions options, AnalysisScope scope, ClassLoader cl, IClassHierarchy cha) {
com.ibm.wala.ipa.callgraph.impl.Util.addDefaultBypassLogic(options, scope, cl, cha);
com.ibm.wala.ipa.callgraph.impl.Util.addBypassLogic(options, scope, cl, benignExtSpec, cha);
}